一个非详尽的 Unix 命令列表

$man <command>

显示命令的联机手册页

$clear

清除终端屏幕

$pwd

返回工作目录名称

$echo <string>

将字符串写入标准输出

$printf <string>

格式化并打印字符串示例:print $ PATH $ printf“%s \ n”$ PATH

$uptime

显示系统运行的时间

$which <program>

在用户的路径中找到程序文件

$whereis <program>

检查指定程序的标准二进制目录,打印出来

FILES

$cd [directory] 

更改目录常用的目录符号:

  • 。 :当前目录
  • ..:父目录
  • 〜:主目录
  • / : 根目录
$ls
  • $ ls -a:显示隐藏文件

  • $ ls -l:显示长列表

  • $ ls -1:每行显示文件名

  • $ ls -h:人类可读的格式

    $ file 确定文件类型(例如 gzip)

阅读文件

$more

在一个时间
空格键的一个屏幕上显示文件的内容 :滚动到下一个屏幕; b =上一个屏幕
输入:滚动一行
h:帮助更多
q:退出帮助

$less <file>

Less 是一个类似于更多的程序,但它允许文件中的向后移动以及向前移动

$cat <file>

按顺序读取文件,将它们写入标准输出

$head [-number] <file>

显示文件的第一行

$tail [-number] <file>

显示文件的内容,或默认情况下,其标准输入,显示标准输出

  • $ tail -f:实时查看文件中的更改
$touch <file>

设置文件的修改和访问时间。如果任何文件不存在,则使用默认权限创建

$tee <file>

将标准输入复制到标准输出。按 ctrl-d 停止添加内容

  • $ tee -a:将输出附加到文件而不是覆盖它们
$mkdir <directory>

创建一个目录

$wc

显示每个输入文件或标准输入中包含的行数,字数和字节数

  • wc -l:计算行数
  • wc -w:计算单词
  • wc -m:计算字符数
$diff <file1> <file2>

逐行比较两个文件。将仅打印不同的行。

$locate <file>

在磁盘上找到文件

  • $ locate -q:抑制错误
$find <path> <expression> <action>

按名称或内容搜索文件

  • $ find -name:按文件名查找
  • $ find -size <+/- n>示例:查找当前目录中大于 10k $ find 的文件。 -size +10
$rm <file or directory>

删除<文件或目录>

  • rm -f:跳过确认
  • rm -i:批准每次删除
  • rm -r:递归

示例:删除它的内容$ rm -r

$mv <source_file> <target_file>

重命名文件

$mv <source_file> <target_directory>

移动文件

  • $ mv -i:不要覆盖现有文件
  • $ mv -r:递归

示例:在$ mv 层次结构中向上移动目录..

$cp

复制同一台计算机中的文件/目录(使用 scp 命令复制到远程计算机)

  • $ cp -i:不要覆盖现有文件
  • $ cp -r:递归

示例:复制并重命名文件

$cp <file_name> <new_file_name>

示例:复制到目录

$cp <file_name> <directory_name>

示例:复制并重命名目录

$cp -R <directory> <new_directory>

示例:将特定类型的所有文件复制到目录

$cp *.txt <directory>
$ln -s <file> <link name>

创建文件的别名(链接)

  • $ ln -s:创建一个软链接(一个跨机器运行的链接)
$sort <file>

对文件的内容进行排序 -r reverse sorts -n numeric sort

示例:对结果进行排序并将结果写入 sorted.txt $ sort | uniq -u> sorted.txt

$uniq [-ucd] filename(s)

寻找重复的行。必须先对数据进行排序

  • $ uniq -d:只显示重复行的一个副本
  • $ uniq -u:仅显示不重复的行
  • $ uniq -c:输出每行前面出现的次数示例:显示连接多次的用户$ who | cut -d’’ - f1 | 排序| uniq -d
$grep <pattern> <file_name> 

打印包含模式匹配的行。

  • $ grep -i:执行不区分大小写的匹配
  • $ grep -v:打印所有不包含正则表达式的行
  • $ grep -r:递归搜索列出的子目录,并打印出模式出现的文件名
  • $ grep -I:排除二进制文件
$tr `string1` [`string 2`]

搜索和替换工具。tr 只接受来自管道和重定向的输入。它不接受文件作为输入。

  • tr -d:删除 string1 中所有出现的 CHARACTERS

示例:删除“;”$ cat a.txt |的所有出现后,将 a.txt 打印到屏幕 tr -d“;”

  • tr -s:用单个字符替换出现的事件

示例:$ echoSSSS SS| tr -sS``S

$tar

创建和操作流式存档文件。此实现可以从 tar,pax,cpio,zip,jar,ar 和 ISO 映像中提取,并可以创建 tar,pax,cpio,ar 和 shar 存档。

磁盘使用情况

$du [file or directory]

显示每个文件或目录的文件系统块使用情况。如果未指定文件/目录,则显示当前目录的块使用情况。

  • $ du -a:文件和目录(默认只是目录)
  • $ du -h:人类可读格式示例:显示磁盘使用情况,有序,仅 MB 文件$ du -h | grep -i“m \ t”| sort -n 示例:找出前 10 个最大的文件/目录$ du -a / var | sort -n -r | 头 –n 10
$df

显示可用磁盘空间

  • $ df -h:人类可读格式

重定向和管道

重定向标准输出。如果文件存在,请不要覆盖文件 ! 重定向标准输出。覆盖文件(如果存在) &重定向标准输出和标准错误

示例:将命令输出重定向到文件中

$ls > result.txt

使用> / dev / null 文件来处理错误消息

示例:查找名为 my_file_name 的文件并将结果打印到〜/ find.txt; 隐藏错误(例如权限被拒绝

$find / -name my_file_name.* > /dev/null > ~/find.txt

<重定向标准输入 >追加标准输出<command> >>:将输出附加到现有的结尾

<command> <:将输入重定向到文件中的命令

| 将标准输出重定向到另一个命令(管道)

示例:显示正在运行的进程的分页详细信息

$ps -ex | more

| :将 command1 的管道输出作为 command2 的输入(如果在管道中间需要输出文件,请使用 tee 命令)

示例:计算已连接用户的数量

$who | wc -l

PROCESSES

$ps

显示活动进程

  • $ ps -e:显示有关该过程的信息
  • $ ps -x:显示隐藏的进程

示例:按名称$ grep -l <​​process_name_regex>查找进程

$kill [-signal] pid

杀死一个过程。

一些比较常用的信号:

  • 3:退出(退出)
  • 9:杀戮(不可捕捉,不可忽视的杀戮)
  • 15:TERM(软件终止信号)
$top

显示和更新有关进程的已排序信息有关可能的键列表,请参见手册页。常用密钥有:cpu,threads,ports

  • $ top -o
$htop

显示和更新有关进程 USER&PERMISSIONS 的已排序信息


$sudo <command>

以超级用户身份执行命令

$su

(替代用户)以管理员身份打开会话

$exit

退出 root

$whoami

显示有效的用户 ID

$who

打印所有连接的用户名

$passwd

更改密码

$chmod <who> <operation> <permissions> <file or directory name>

更改对文件或目录的所有者/组访问权限

谁:你的用户; g 组; 其他; 一个以上

操作:+添加; - 去掉; = set(表示重置为空,仅设置指定的内容)

权限:rwx

示例:向组添加读/执行权限

$chmod g +rx <file>

例:

$chmod 743 <file>

请注意,要$ cd 进入目录,你需要 x 权限