首页 分类
阿荡的博客

《Linux大学教程》命令大全

创建时间:2019-12-03

更新时间:20 小时前

date 显示当前日期和时间

who 显示当前登录系统的所有用户标识(同时显示终端名称、登陆时间等)

passwd 改变口令

last 查看所有用户登录记录

last [用户标识] 查看某个用户的登录记录

exit 退出当前登录的身份,返回上一个登录身份

su [用户标识] 临时以另一个用户身份(用户标识默认为 root)登录(不改变环境)

su - [用户标识] 临时以另一个用户身份登录(同时改变环境)

sudo 临时以超级用户身份登录

less 每次一屏地显示内容

sudo init 修改运行级别

sudo reboot 重启

sudo shutdown now 立即关机

dmesg 显示系统启动信息

infocmp 显示当前正在使用的终端信息

echo $TERM 显示当前正在使用的终端类型

printenv 显示当前 shell 所有环境变量

stty -a 显示系统键盘的映射

stty 只显示默认值已经被改变的键盘映射

stty kill ^U 将 kill 信号映射到<ctrl+u>键盘组合键

which 查看某个命令是否可用

date -u 显示 UTC 时间

cal 显示当前月份日历

cal 2019 显示 2019 年全部月份日历

cal 1 2019 显示 2019 年 1 月份的日历

cal -j 12 2019 显示 2019 年 12 月份的日历(不显示日期,而是显示这一天是这一年的第几天。技巧:如果 12 月的最后一天为改年该第 366 天,则可判断该年为闰年,否则为平年)

calendar foo.txt 根据文件 foo.txt 创建提醒任务

uptime 显示系统连续运行多长时间的相关信息

hostname 查看计算机名称

uname 查看操作系统的名称

uname -a 查看操作系统的详细信息

whoami 显示当前用户的标识

users 仅仅显示当前登陆系统的所有用户标识

w 查看系统上用户更多信息

w [用户标识] 查看该用户正在做什么

lock 临时锁住终端(默认 15 分钟)

lock -5 临时锁住终端 5 分钟

leave 1015 在 10 点 15 分提醒我离开

leave +15 15 分钟后提醒我离开

bc 启动计算器

man [命令名称] 查看命令的文档资料

whatis [命令名称] 查看命令简介

apropos manual 查找某些命令,它们的文档资料包括关键词 manual(不区分大小写)

info [命令名称] 显示命令的 info 文件

date;cal 同时执行 date 和 cal 两个命令

env或printenv 显示所有环境变量

set 显示所有 shell 变量(局部变量)

set -o [shell变量] 关闭 shell 变量

set +o [shell变量] 打开 shell 变量

export DEMO=value 将变量 DEMO 导出到环境变量

type [命令名称] 查看命令是不是 shell 内置命令

export PATH="$PATH:$HOME/bin" 将搜索路径的值修改为旧值加上$HOME/bin

echo "my name is ${USER}" 在字符串中使用变量

echo "The time and date are `date`. 在字符串中嵌入 date 命令

export PS1="\A:\$" 修改 shell 提示,$符号前面新增时间

fc -l 查看使用过的命令列表

fc -s 20 重新执行编号为 20 的命令(如果不指定编号,默认为上一个命令)

fc -s stringA=stringB 20 重新执行编号为 20 的命令,并且把之前的字符串 stringA 改为字符串 stringB

export HISTORY=50 指定历史列表最多存放 50 条命令

alias 显示所有的别名

alias dt=date 将 date 命令映射到到别名 dt

alias dt 显示别名 dt 代表的含义

unalias dt 删除别名 dt

unalias -a 删除所有别名

\ls 运行实际命令 ls 本身,而不是别名

more data.txt 每次 8 一屏地显示 data.txt 中的数据,按空格键会显示下一屏数据。

> out.txt 将数据写入到文件 out.txt 中,如果文件不存在则创建,如果文件中有内容则覆盖内容。

>> out.txt 将数据追加到文件 out.txt 的尾部。

set -o noclobber 防止文件内容被意外地覆盖。执行此命令后,如果标准输出所指定的文件已存在,屏幕会提示错误。如果你确实希望覆盖,用>|代替>

sort 1> output.txt 2> error.txt 将标准输出写入 output.txt 文件,标准错误写入 error.txt 文件。

sort &> output.txtsort >& output.txt 将标准输出和标准错误都写入 output.txt 文件

sort > /dev/null 不想看标准输出,将标准输出抛弃

sort 2> /dev/null 不想看标准错误,将标准错误抛弃

sort 2> /dev/null 不想看标准错误,将标准错误抛弃

Ybz061.png

cat name1 name2 | tee backup | sort 将 cat 的输出保存在 backup 文件,同事 cat 的输出经过管道线传送给 sort 命令。如果 backup 文件不存在则创建。如果 backup 内已经有内容,内容会被覆盖,使用 tee -a 可以避免覆盖,而是追加。

command1 && command2 命令 1 成功执行才去执行命令 2

command1 || command2 命令 1 执行失败才去执行命令 2

cat > file 快速地创建一个小文件,然后从键盘写入内容。

cat 常用命令选项 -n(number,数字)在每行前面加一个行号 -b(blank,空白)和-n 选项一起使用,不要对空白行编号 -s(squeeze,挤压)将连续多个空白行替换为一个空白行

split file 将文件 file 分割成 xaa、xab、xac 等文件,每个文件的最大行数为 1000。

rev file 将文件 file 中各行中字符的顺序反转

head -n 15 file 显示文件 file 前 15 行(如果没有-n 15 参数,默认显示 10 行)

tail -n 15 file 显示文件 file 最后 15 行(如果没有-n 15 参数,默认显示 10 行)

colrm 1 5 file 删除 file 中指定的数据列(1 到 5 列)

colrm 5 file 删除 file 中第 5 列(包括)到最后一列的所有数据列

假设文件 a 内容为 1 a 文件 b 内容为 1 b comm a b输出为 1 a b

第一列表示 a 为第一个文件独有的数据,第二列表示 b 为第二个文件独有的数据,第三列表示两个文件共有的数据。 comm 命令比较的文本必须是有序文本。参数-n(n 为 1、2、3)表示屏蔽第 n 列的输出。

cut -c 1,5 file 截取文件第 1 列和第 5 列数据

cut -c 1-5 file 截取文件第 1 到 5 列数据

cut -f 1 -d ',' file 使用指定的分隔字符',',将文件 file 的每一行切割成字符串数组,取数组中的第一项。

paste -d ',' a b 使用指定的分隔字符',',将文件 a 和 b 的每一行连接起来。

nl -v 5 -i 10 file 为文件 file 临时插入(不改变源文件 file)行号,起始号码为 5,增量为 10。

wc file 对 file 进行单词统计,通常输出三个数字。从第一个数开始分别代表行数 line、单词数 word 以及字符数 char。

wc -l file 只统计行数

未完待续