Linux常用命令(1)

在Linux中有近千条的命令,由于篇幅的关系,不可能将所有的命令全部列出。本附录只是对一些常用的命令进行介绍。读者在使用没有列出的命令时,如果有任何疑问,可以使用“command --help”获得该命令的在线帮助,或着查看相关的man pages获得更详细地使用说明。

alias

用一个简单的名字来代替一条复杂的命令(起别名),如果忽略了命令名,则打印所有已定义的命令的别名 。

语法:

alias [参数] aliasname=’命令’

-t 为Linux命令创建一个可跟踪的别名。

-x 输出别名,使之在shell脚本中使用。

ash

由Kenneth Almquist在1989年编写,它的很多特性接近于SYSTEM V的shell。

语法:

ash [-eflijnsxz] [+eflijnsxz] [ -c 命令] [参数]

-c 若使用-c参数,则ash在执行完这条命令后退出。

-s 若用-s参数,则ash从标准输出中读入命令,如果不跟-c -s参数则ash以所跟的第一个参数为文件名,从此文件中读入命令,直接输出到exit。如果参数0的第一个字符是“-”则ash确定为login shell,ash将从/etc/profile或用户目录中的.profile读入相应的设置和环境变量。

-e 执行命令后返回值为非零值时退出ash。

-f 关闭ash自动产生文件名的功能。

-j 打开伯克利Unix风格的工作控制。

-n 读入命令但不执行。

banner

在输出行中打印高质量的标题,如果输出要打印的文字,则其等待从标准输入中输入一行文字。

语法:

/usr/games/banner [-wn] msg

-w 宽度。输出宽度从132到n,n默认值为80列

bash

是目前广泛使用的一种shell,同sh兼容,并且包含了ksh和csh中一些有用的特性。

语法:

bash [参数] [文件名]

-c 字符串 从字符串中读入命令,如果字符串后还有变量则被设定为从$0开始的位置参数。

-i 交互式的执行命令。例如:rm –i。

-s 从标准输入中读命令,直到输入exit。

- 表示参数执行完毕,并且屏蔽此后所跟的参数,后面的所有变量都被看作是文件名。

-norc 如果bash是交互的,则不执行个人初始化文件~/.bashrc,如果bash作为shell来运行,这个参数缺省是关闭的。

-noprofile 不执行系统范围内的启动文件,也不执行个人启动文件~/.bash_profile、~/bash_login或~/.profile,缺省情况下,bash作为登录shell时以这些文件作为启动文件。

-rcfile文件名 如果bash是交互的,则以此文件作为bash的启动文件。

-version 在bash开始时显示此bash的版本号。

-quiet 不显示版本号或其它信息,这是默认值。

-login 激活bash伪装为登录shell。

-posix 改变bash的行为,使其符合Posix1003.2规定的标准。

cal

显示一个日历。对于查询某年某月某日的用户来说是非常有用的。

语法:

cal [-jy] [月 年]

-j x显示julian日期(日子是从1月1日开始累加的)

-y 显示今年的日历。

年份必需写全,“cal 99”是不正确的,应该写为“cal 1999”。月份必须是1-12之间的数字或英文全称。不加任何参数则输出本月日历。

cat

将文件连接到一起,用“>”操作将几个文件组合成一个新的文件,或者是用“>>”把文件追加到已存文件的后面。

语法:

cat [参数] filelist

-e 打印一个$来表示每行的结尾,这个选项只有与-v选项一起使用才有效。

-v 显示控制字符或其它不可打印的字符。

-s 隐去不可读文件的信息。

-t 把每个tab打印为^l,并把Form feed用^L填充

-u 无缓冲的打印输出。

filelist 用于结合文件的可选列表。

cd

改变当前工作目录。

语法:

cd 目录名

如果后面不加目录名,则返回用户的根目录,此外用户必须拥有进入该目录的权限。

chgrp

该变文件的组所有权。一些chgrp命令的选项有长短两种选项格式。我们这里只列出这些选项的短表示方式。详细资料请参看man pages。

语法:

chgrp [参数] 组文件

-c 只有在文件的所有权确实改变时才进行详细地说明。

-f 不打印所有权不能该变的文件的错误信息。

-v 详细说明所有权的变化。

-R 递归改变目录及其内容的所有权

--help 在标准输出上打印使用信息并退出。

--version 在标准输出行上打印版本信息并退出。

group 要改变的组。可以是GID,也可以是有效组名。

files 要改变组所有权的文件列表,以空格分开。

若不是文件的所有者或root,则不能修改文件的组所有权。

chmod

改变文件的模式。文件模式控制了与该文件相关的访问权限,Linux有三个安全级别:所有者级、组访问级和其它用户级。在这三个级中,有三种权限:读、写和执行。对于标准文件,读权限意味着可以浏览文件的内容,写权限可以修改文件,执行权限可以运行该文件。目录形式有所不同。读权限可以浏览该目录下的内容,写权限可以在目录下创建文件或删除文件。执行权限意味着可以从一个目录转变到另一个目录。

语法:

chmod [参数] 保护模式 文件或目录

-c 只有在文件的权限确实改变时才进行详细地说明。

-f 不输出权限不能改变的错误信息。

-v 详细说明权限的变化。

-R 改变本目录及其所有子目录的文件的权限。

--help 在标准输出上输出帮助信息并退出。

--version 在标准输出上输出版本信息并退出。

保护模式 格式为[ugoa…] [ [+ - = ] [rwxXstugo…]…][,…]

cp

拷贝文件。

语法:

cp [参数] 源文件 目标文件或目录

-a 在备份中尽可能的保留源文件的结构和属性。

-b 做将要覆盖或删除文件的备份。

-d 将符号链接作为符号链接拷贝,而不拷贝它们所链接的文件。并在备份中保留源文件间固有的链接关系。

-f 删除已存在的目标文件。

-i 提示是否覆盖已存在的目标文件。

-l 形成固有链接以替代非目录的拷贝。

-P 通过加入目标目录分支和指定的源文件名形成每个目标文件名。给cp的最后一个变量必须是已存在的目录名。

-p 保留原先文件的所有者、组、权限和时间标志。

-r 递归拷贝目录。

-s 建立符号连接,替代非目录文件拷贝。

-v 在拷贝前打印每个文件名。

-R 同- r

--help 在标准输出上打印帮助信息并退出。

--version 在标准输出上打印版本信息并退出。

crontab

操作每个用户的守护程序和该执行的时间表。

语法:

crontab file [-u user] 用指定的文件替代目前的crontab。

crontab – [-u user] 用标准输入代替当前的crontab

crontab –l [user] 列出用户目前的crontab

crontab –e [user] 编辑用户目前的crontab

crontab –d [user] 删除用户目前的crontab

crontab –c dir 指定crontab的目录

crontab文件的格式是:M H D m d cmd

M 分钟(0-59)。

H 小时(0-23)。

D 天(1-31)。

m 月(1-12)。

d 一星期内的一天(0-6,0为星期日)。

cmd 要运行的程序。

date

显示系统的时间和日期,root可以使用该命令来设置日期和时间。用户可以控制日期如何显示。

语法:

date MMDDhhmmyy或date+formate

MM 月(0-12)。

DD 日期(1-31)。

hh 小时(00-23)。

mm 分钟(00-59)。

yy 年(00-99)。

+format 由%和紧跟其后的下列字符组成:

n 插入一行。

t 插入tab。

m 月份(数字)。

d 日期(数字)。

y 年份的最后两位。

D nn/dd/yy格式的日期。

I 小时。

M 分钟。

s 秒。

W 星期(0-6,0为星期日)

dd

拷贝一个文件

语法:

dd [-help] [-version] [if=file] [of=file][ibs=bytes] [obs=bytes] [bs=bytes] [cbs=bytes]

[skip=blocks] [seek=blicks] [conv={ascii, ebcdic, ibm, block, unblock, lcase, ucase,

swab, noerror, notrunc, sync}]

if=file 以file作为源文件代替标准输入。

of=file 以file作为目标文件代替标准输出。

ibs=bytes 一次读bytes个byte。

obs=bytes 一次写bytes个byte。

cbs=bytes 一次读写bytes个byte,这个参数将改写ibs和obs的值。

skip=blocks 在开头忽略blocks个ibs大小的块。

seek=blocks 在开头忽略blocks个obs大小的块。

count=blocks 只拷贝blocks个ibs大小的块。

conv=conversion [, conversion. . .] 转换文件,可转换的文件格式有ascii, ebcdic, ibm, block, unblock, lcase, ucase, swab, noerror, notrunc, sync。

--help 在标准输出上输出帮助信息并退出。

--version 在标准输出上输出版本信息并退出。

df

检查磁盘剩余空间

语法:

df [参数]

-a 列出block为零的文件系统缺省是不列出的。

-i 用inode的使用情况来代替block的使用情况。

-k 以K为单位输出block(默认是512bytes)。

-P 使用Posix格式输出。

-T 输出每个文件系统的类型。

-t 只输出列出在fstype中的类型的文件系统。

-x 只输出不在fstype中的类型的文件系统。

-v 无用,只是为了和System V版本的df兼容。

--help 在标准输出上输出帮助信息并退出。

--version 在标准输出上输出版本信息并退出。

diff

比较两个文本文件的不同

语法:

diff [参数] 源文件 目标文件

-a 将所有文件当做文本文件来处理。

-b 忽略空格造成的不同。

-B 忽略空行造成的不同。

-q 只报告何处不同,不报告具体信息。

-c 使用纲要输出格式。

-e 输出ed可以编辑的格式。

-f 输出同-e类似的反序格式。

-H 利用试探法加速对大文件的搜索。

-i 忽略大小写的变化。

-l 用pr对输出分页。

-n 输出RCS格式。

-r 比较目录时比较所有的子目录。

-v 在标准输出上输出版本信息并退出。

du

报告磁盘空间使用情况

语法:

du [参数]

-a 显示文件的总合。

-b 以byte为单位输出所占空间的大小。

-c 在处理完所有的参数后给出所有这些参数的总计。

-k 以kilobytes为单位输出所占空间的大小。

-l 统计所有文件的大小即使它已经在另一个连接中被统计过了。

-s 对每个参数只显示总合。

-x –one file system 忽略不在本文件系统上的目录。

-D 不统计命令行参数的符号链接的文件。

-L 不统计符号链接的文件。

-S 单独统计每个目录的大小,不包括子目录的大小。

--help 在标准输出上输出帮助信息并退出。

--version 在标准输出上输出版本信息并退出。

echo

本命令传给它的参数在标准输出上显示。

语法:

echo [参数] 字符串

-a 不输出新行。

-e 使用echo显示下列Esc字符。

\ a 警告(响铃)。

\ b 退格。

\ c 在行尾不另起一行。

\ f 换页。

\ n 换行。

\ r 回车。

\ t 制表符。

\ V 垂直制表符。

\ \ 反斜杠。

\ nnn 字符的八进制码是nnn。

--help 在标准输出上输出帮助信息并退出。

--version 在标准输出上输出版本信息并退出。

env

修改命令执行环境,不影响当前环境。也可显示当前环境。

语法:

env [参数] 变量 命令

-u 从原环境中删除变量

-i 开始一个空环境,忽略原环境的所有设置。

--help 在标准输出上输出帮助信息并退出。

--version 在标准输出上输出版本信息并退出。

file

检查文件的类型

语法:

file [参数] [-f namefile] [-m magicfile] 文件名

-v 在标准输出上输出版本信息并退出。

-m magicfile 指定用来代替/etc/magic的新文件。

-z 检查压缩过的文件。

-c 输出正在处理的magicfile的分析表格,常同-m参数联合起来 使用测试新的magicfile文件。

-f namefile 从文件namefile中读取要分析的文件名列表。

-L 允许符号链接。

文件名 要分析的文件名。

find

搜索特定的文件

语法:

find [路径..] [匹配表达式]

路径 要搜索的目录。

匹配表达式 要搜索的文件匹配标准或说明。

-name 文件名 告诉find要查找的文件。

-perm 模式 匹配所有符合指定数值模式值的文件,如果模式前面是“-”号,则搜索所有除这个模式以外的所有模式。

-size n 匹配大小为n个block的文件名。

-user 用户名 搜索所有属主为用户名的文件。

-group 组名 搜索所有属主为组名的文件。

-atime n 搜索在n天前访问过的文件。

-mtime n 搜索在n天前修改过的文件。

-exec 命令 对每个匹配的文件执行命令,标志{}用于指定命令执行时文件名出现的地方,命令必须终止于符号“\;”。

-print 将搜索结果输出到标准输出。

finger

显示系统中用户的信息。

语法:

funger [参数] 用户名

-b 在输出结果中略去用户的home和shell。

-f 隐藏头部几行。

-l 强迫长输出。

-p 不打印.plan文件。

-q 显示用户的快速列表。

-s 显示一个短格式。

user 指定登录名、实际名和姓。

fortune

输出一段寓言或谚语

语法:

fortune

grep

在文件中搜索匹配的行并输出。

grep

在文件中搜索匹配的行并输出。

语法:

grep [ -[AB] ]num] [ -[CEFGVBchilnsvwx] ] [-e]正确表达式 | -f file] [文件名]

-A num 输出匹配行后的num行。

-B num 输出匹配行前的num行。

-V 输出版权信息。

-f file 从文件中读入表达式。

-q 不输出。

-s 不输出错误信息。

gzexe

将可执行文件压缩成较小的可执行文件。

语法:

gzexe [文件名. . .]

-d 解压缩

gzip

压缩或解压缩文件

语法:

gzip [参数] 文件名。

-d 解压缩。

-h 显示帮助信息并退出。

-t 检验压缩文件。

-V 显示版权信息并退出。

-v 输出压缩信息。

-# #为0-9的数字,数字越小速度越快,但是压缩比越小。

-c 压缩结果输出到标准输出,如不加-c参数,则gzip将压缩为.gz文件并删除源文件。

head

显示文件的前几行。

语法:

head [参数] 文件

-c N 输出文件的前N个字节。

-n N 输出文件的前N行。

-q 不输出文件名的信息。

-v 输出文件名的信息。

--help 在标准输出上输出帮助信息并退出。

--version 在标准输出上输出版本信息并退出。

id

显示用户的系统标志,报告用户名、用户号(ID)、组名和组号(GID)。

语法:

id [参数]

-g 只显示组号。

-G 只显示次要组。

-u 只显示用户号。

--help 在标准输出上输出帮助信息并退出。

--version 在标准输出上输出版本信息并退出。

kill

终止当前进程。

语法:

kill [信号] 进程号

信号 送入可选信号,缺省值为SIGTERM。其它两个常用值,一个是SIGHUP,是调制解调器通过电话挂起的设备;另一个是SIGKILL,不能被进程忽略。

-l 显示可用kill传送的信号名称表。

less

按页显示文件。类似于more,但允许在文件中前后移动。

语法:

less [参数] 文件名

-? 输出less可以接受的命令选项。

-a 在屏幕上输出最后一行之后开始查询。

-c 从顶行向下全屏重写。

-C 与-c同,但写之前清屏。

-e 第二次到文件尾部时退出less。默认的退出方法是按“q”键。

-E 第一次到文件尾后自动退出less。

-i 查询时忽略大小写。

-n 去掉行号。

-o file 将输出拷贝到文件。

-q 不输出响铃。

-Q 同-q。

-s 将多个空行压缩成一个空行。

-x n 每次按制表符走n格,n的默认值是8。

ln

在文件间建立链接。

语法:

ln [参数] 源文件 目标文件

-b 为删除的文件建立备份。

-d,-F 允许root建立硬连接。

-f 删除目标文件。

-i 在删除文件时给出提示

-n 如果目标文件是一个目录的符号链接,则代替此符号链接,而不是在这个目录中做链接。

-s 用符号链接代替硬连接。

-v 输出每个要连接的文件的文件名。

--help 在标准输出上输出帮助信息然后退出。

--version 在标准输出上输出版本信息然后退出。

你可能感兴趣的:(C++,c,linux,C#,bash)