linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心。
注意:语法中所有 [ ] 代表可选参数
pwd
pwd命令用于显示工作目录。
执行pwd指令可立刻得知您目前所在的工作目录的绝对路径名称。
语法
pwd [--help][--version]
cd
cd命令用于切换当前工作目录至 dirName(目录参数)。
其中 dirName 表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的 home 目录 (也就是刚 login 时所在的目录)。
另外,"~" 也表示为 home 目录 的意思,"." 则是表示目前所在的目录,".." 则表示目前目录位置的上一层目录。
语法
cd [dirName]
mkdir
mkdir命令用于建立名称为 dirName 之子目录。
语法
mkdir [-p] dirName
- -p 确保目录名称存在,不存在的就建一个。
ls
ls命令用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录)。
语法
ls [-alrtAFR] [name...]
参数
- -a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)
- -l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
- -r 将文件以相反次序显示(原定依英文字母次序)
- -t 将文件依建立时间之先后次序列出
- -A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
- -F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
- -R 若目录下有文件,则以下之文件亦皆依序列出
vi/vim
所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。
但是目前我们使用比较多的是 vim 编辑器。
vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。
语法
vi demo.txt
vim demo.txt
如果文件不存在,会自动创建文件
进入编辑器后为非编辑状态,点击“i”或“insert”进入编辑状态
编辑完成后点击“esc”退出编辑状态,输入
:wq -> 保存并退出
:q -> 不保存退出
:q! -> 强制退出
touch
touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。
ls -l 可以显示档案的时间记录。
语法
touch [-acfm][-d<日期时间>][-r<参考文件或目录>] [-t<日期时间>][--help][--version][文件或目录…]
参数
- a 改变档案的读取时间记录。
- m 改变档案的修改时间记录。
- c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。
- f 不使用,是为了与其他 unix 系统的相容性而保留。
- r 使用参考档的时间记录,与 --file 的效果一样。
- d 设定时间与日期,可以使用各种不同的格式。
- t 设定档案的时间记录,格式与 date 指令相同。
- --no-create 不会建立新档案。
- --help 列出指令格式。
- --version 列出版本讯息。
cat
cat 命令用于连接文件并打印到标准输出设备上。
语法
cat [-AbeEnstTuv] [--help] [--version] fileName
参数
- -n 或 --number:由 1 开始对所有输出的行数编号。
- -b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
- -s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。
- -v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。
- -E 或 --show-ends : 在每行结束处显示 $。
- -T 或 --show-tabs: 将 TAB 字符显示为 ^I。
- -A, --show-all:等价于 -vET。
- -e:等价于"-vE"选项;
- -t:等价于"-vT"选项;
head
head命令用于查看文档的开始指定数量的字符块,默认显示文档的前 10 行,如果给定的文件不止一个,则在显示的每个文件前面加一个文件名标题。
语法
head [选项] [文件..]
参数
- -c, --bytes=[-]K k,显示文档开始的前k个字节,-k,不显示文档结尾的最后 k 个字节
- -n, --lines=[-]K k,显示文档开始的前k行,-k,不显示文档结尾的最后 k 行
- -q, --quiet, --silent 不显示包含给定文件名的文件头
- -v, --verbose 总是显示包含给定文件名的文件头
- --help 显示此帮助信息并退出
- --version 显示版本信息并退出
tailf
tail 命令可用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件。
tail -f filename 会把 filename 文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要 filename 更新就可以看到最新的文件内容。
语法
tail [参数] [文件]
参数
- -f 循环读取
- -q 不显示处理信息
- -v 显示详细的处理信息
- -c<数目> 显示的字节数
- -n<行数> 显示文件的尾部 n 行内容
- --pid=PID 与-f合用,表示在进程ID,PID死掉之后结束
- -q, --quiet, --silent 从不输出给出文件名的首部
- -s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒
ifconfig
ifconfig命令用于显示或设置网络设备。
ifconfig可设置网络设备的状态,或是显示目前的设置。
语法
ifconfig [网络设备][down up -allmulti -arp -promisc][add<地址>][del<地址>][<hw<网络设备类型><硬件地址>][io_addr<I/O地址>][irq<IRQ地址>][media<网络媒介类型>][mem_start<内存地址>][metric<数目>][mtu<字节>][netmask<子网掩码>][tunnel<地址>][-broadcast<地址>][-pointopoint<地址>][IP地址]
参数
- add<地址> 设置网络设备IPv6的IP地址。
- del<地址> 删除网络设备IPv6的IP地址。
- down 关闭指定的网络设备。
- <hw<网络设备类型><硬件地址> 设置网络设备的类型与硬件地址。
- io_addr<I/O地址> 设置网络设备的I/O地址。
- irq<IRQ地址> 设置网络设备的IRQ。
- media<网络媒介类型> 设置网络设备的媒介类型。
- mem_start<内存地址> 设置网络设备在主内存所占用的起始地址。
- metric<数目> 指定在计算数据包的转送次数时,所要加上的数目。
- mtu<字节> 设置网络设备的MTU。
- netmask<子网掩码> 设置网络设备的子网掩码。
- tunnel<地址> 建立IPv4与IPv6之间的隧道通信地址。
- up 启动指定的网络设备。
- -broadcast<地址> 将要送往指定地址的数据包当成广播数据包来处理。
- -pointopoint<地址> 与指定地址的网络设备建立直接连线,此模式具有保密功能。
- -promisc 关闭或启动指定网络设备的promiscuous模式。
- [IP地址] 指定网络设备的IP地址。
- [网络设备] 指定网络设备的名称。
reboot
reboot命令用于用来重新启动计算机。
若系统的 runlevel 为 0 或 6 ,则重新开机,否则以 shutdown 指令(加上 -r 参数)来取代
语法
reboot [-n] [-w] [-d] [-f] [-i]
参数
- -n : 在重开机前不做将记忆体资料写回硬盘的动作
- -w : 并不会真的重开机,只是把记录写到 /var/log/wtmp 档案里
- -d : 不把记录写到 /var/log/wtmp 档案里(-n 这个参数包含了 -d)
- -f : 强迫重开机,不呼叫 shutdown 这个指令
- -i : 在重开机之前先把所有网络相关的装置先停止
tar
tar命令用于备份文件。
tar是用来建立,还原备份文件的工具程序,它可以加入,解开备份文件内的文件。
语法
压缩文件 非打包
touch a.c
列出压缩文件内容
tar -ztvf test.tar.gz
解压文件
tar -zxvf test.tar.gz
cp
cp命令主要用于复制文件或目录。
语法
cp [options] source dest
或
cp [options] source... directory
参数
- -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
- -d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
- -f:覆盖已经存在的目标文件而不给出提示。
- -i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
- -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
- -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
- -l:不复制文件,只是生成链接文件。
ctrl + c
中断当前操作
mv
mv 命令用来为文件或目录改名、或将文件或目录移入其它位置,也就是windows上的剪切操作。
语法
mv [options] source dest
或
mv [options] source... directory
参数
- -i: 若指定目录已有同名文件,则先询问是否覆盖旧文件;
- -f: 在 mv 操作要覆盖某已有的目标文件时不给任何指示;
rm
rm命令用于删除一个文件或者目录。
语法
rm [options] name...
参数
- -i 删除前逐一询问确认。
- -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
- -r 将目录及以下之档案亦逐一删除。
clear
清空命令行