Linux学习总结
Linux学习总结
一、Linux常用命令
1.1 命令格式
命令名 [选项] [参数1] [参数2]
使用bash命名时,注意以下几点:
- 命令名必须是小写英文字母。
- 方括号括起来的部分不是必需的。
- 选项是对命令的特别定义,以“-”开始,多个选项可用“-”连起来,如:ls -T -a
- 参数提供命令运行的信息或者命令执行过程中所使用的文件名。
- 如果没有参数,命令将从键盘接收数据,在显示器上显示数据。
1.2 输入命令
如果一个命令太长,一行放不下时,要在第一行行尾输入“\”字符,并按Enter键。这时shell会返回一个大于号(>)作为提示符,表示该命令行尚未结束,允许继续输入有关信息。
$ echo Wang ZiHao is \
>a good man.
输出: Wang ZiHao is a good man.
注意:命令与选项和参数之间要用空格或制表符隔开。连续的空格被当做一个空格。
1.3 简单命令
1. who命令
who命令列出所有正在使用系统的用户、所用终端名和注册到系统的时间。
who am i 命令将列出使用该命令的当前用户的相关信息。
2. echo命令
echo将命令行中的参数输出到屏幕上
$ echo 'This is a command. ' 在参数两端加上单引号,参数将以原样输出, 输出是: This is a command.
$ echo This is a command. 输出是: This is a command.
3. date命令
date命令在屏幕上显示或设置系统时间。如果没有选项和参数,直接显示当前时间。
4. cal命令
$ cal 10(列出公元10年的日历)
$ cal 12 2017(列出2017年12月的日历)
5. clear命令:清屏
6. passwd命令
利用此命令可以把原来的口令修改为一个更加安全的字符串
$ passwd
Changing password for user Waldo.
Changing password for Waldo
(current) UNIX Password: [提示用户输入老密码]
New UNIX password: [要求输入新密码]
Retype new UNIX password: [再次输入新密码,如果两次一样,则修改成功
1.4 文件操作命令
0x01 cat命令
设m1和m2是当前目录下的两个文件
$ cat m1(在屏幕上显示文件m1的内容)
$ cat m1 m2(同时显示文件m1和m2的内容)
$ cat m1 m2 > mfile(将文件m1和m2合并后放入文件mfile中 )
0x02 more命令
1. 显示文件mfile的内容,在显示之前先清屏,并在屏幕下方显示完整的百分比
$ more -dc mfile
2. 显示文件mfile的内容,每10行显示一次,而且在显示之前先清屏
$ more -c -10 mfile
0x03 less命令
less命令可以向上向下翻页,但是more命令只能向下翻页
0x04 head命令
head命令在屏幕上显示指定文件的开头若干行。显示行数默认10行。
$ head -5 mfile (显示文件mfile的前5行)
$ head -v mfile (显示文件mfile的内容,并且给出文件名标题)
$ head -q mfile (显示文件mfile的内容,但不列出文件名标题)
0x05 tail命令
$ tail mfile(显示文件mfile的最后10行)
$ tail +20 mfile(显示文件mfile的内容,从第20行至文件末尾)
$ tail -c 10 mfile(显示文件mfile的最后10个字符)
0x06 touch命令
$ touch -a mfile 仅改变指定文件的存取时间
$ touch ex2 在当前目录下建立一个空文件ex2
0x07 sort命令
对more_h10文件排序
$ head mfile > more_h10(将文件mfiile的前10行定向到文件more_h10中)
$ sort more_h10
0x08 cp命令
-
cp命令将源文件或目录复制到目标文件或目录中
-
一般格式:** cp [选项] 源文件或目录 目标文件或目录 **
-
说明:
如果源文件是普通文件,则该命令把它复制到指定的目标文件中;
如果是目录就需要使用“-r”选项,将整个目录下所有的文件和子目录都复制到目标位置。 -
-i 在覆盖目标文件之前先给出提示,要求用户予以确认。回答y,将覆盖目标文件
-r 将源目录下的所有文件及其各级子目录都复制到目标位置
1. 将文件mfile复制到目录/home/mengqc下,并改名为exam1:
$ cp mfile /home/mengqc/exam1
2. 将目录/home/mengqc下的所有文件及其子目录复制到目录/home/liuzh中:
$ cp -r /home/mengqc /home/liuzh
3. 将/home/mengqc中以m打头的所有.c文件复制到目录/home/liuzh中:
$ cp -i /home/mengqc/m*.c /home/liuzh
0x09 rm命令
1. 交互式删除当前目录下的文件test和example:
$ rm -i test example
rm: 是否删除一般文件'test'? [Enter](不删除文件test)
rm: 是否删除一般文件'example'? y(删除文件example)
2. 删除当前目录下除隐含文件外的所有文件和子目录:
$ rm -r *
0x10 mv命令
此命令用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。
1. 将文件ex3改名为new1:
$ mv ex3 new1
2. 将目录/home/mengqc中的所有文件移动当前目录(用“.”表示)中:
$ mv /home/mengqc/* .
0x11 wc命令
-c 统计字节数
-l 统计行数
-w 统计字数
$ wc -lcw ex1 ex2(统计文件ex1和ex2的字节数、字数和行数)
$ wc ex1 ex2(不带选修,统计文件ex1和ex2的字节数、字数和行数)
0x12 cd命令
cd命令用来改变工作目录。
cd ../.. 把当前工作目录向上移动两级目录
cd 从系统任何地方返回主目录
示例:
0x01. 将当前目录改到/home/liu:
$ cd /home/liu
0x02. 将当前目录改到用户的主目录:
$ cd
0x03. 将当前目录向上移动两级:
$ cd ../..
0x13 pwd命令
pwd命令显示出当前工作目录的绝对路径,格式:pwd
1.5 点(.)和点点(..)
点(.)表示本目录自身
点点(..)代表该目录的父目录
例如:当前目录为/home/mengqc/lib,想列出/home/liu目录的内容,可以使用命令:
ls ../../liu
0x14 ls命令
列出指定目录的内容。
0x01. 列出当前目录的内容,并标出文件的属性:
$ ls -F
0x02. 按多列形式列出目录/home/mengqc的内容:
$ ls -C /home/mengqc
0x15 gzip命令
gzip命令对文件进行压缩和解压缩
压缩:-v 将当前目录所有文件全部压缩
$ gzip -v --fast *
解压缩:-dv 将当前目录所有文件全部解压缩
$ gzip -dv *
0x16 unzip命令
将压缩文件chapter1.zip在当前目录下解压缩:
$ unzip chapter1.zip
1.6 系统命令
0x01 关机命令
1、halt 立刻关机 2、poweroff 立刻关机 3、shutdown -h now 立刻关机(root用户使用) 4、shutdown -h 10 10分钟后自动关机 如果是通过shutdown命令设置关机的话,可以用shutdown -c命令取消重启
0x02 重启命令
1、reboot 2、shutdown -r now 立刻重启(root用户使用) 3、shutdown -r 10 过10分钟自动重启(root用户使用) 4、shutdown -r 20:35 在时间为20:35时候重启(root用户使用) 如果是通过shutdown命令设置重启的话,可以用shutdown -c命令取消重启