引言
常用快捷键和基本命令整理,先上思维导图:
命令行提示符
如下为基本命令行提示符的样子,其中root为用户名,代表超级用户,oldbodyedu代表主机名,~代表当前目录,即家目录,#是超级用户提示符,如果是普通用户使用$。
基本快捷键的使用
(1)Tab,补充命令
不用输入完整的命令,输入命令前几个字母后Tab键,会自动补全命令提示。
(2)移动光标命令
Ctrl+A:移动光标到开头
Ctrl+E:移动光标到结尾
Ctrl+F:往光标后面移动一个字符
Ctrl+B:往光标前面移动一个字符
(3)剪切字符
Ctrl+K:剪切光标处到行尾的字符
Ctrl+U:剪切光标处到行首的字符
Ctrl+Y:将剪切的字符进行粘贴
(4)复制粘贴
Ctrl+Ins:复制
Shift+Ins:粘贴
(5)中断正在运行的命令行
Ctrl+C
(6)退出当前Xshell
Ctrl+D
(7)搜索命令行使用过的历史命令记录
Ctrl+R
(8)获取上一条命令的最后部分,用空格分隔开来的部分
ESC+.
(9)清屏命令
Ctrl+L
(10)暂停命令
Ctrl+Z
如上面sleep 40命令执行后一直动不了,光标一直在闪,按Ctrl+Z后就可以重新回到命令行
(11)锁屏
Ctrl+S
(12)解除锁屏
Ctrl+Q
(13) !+命令 执行上一条命令,!! 执行上两条命令
基本命令
(1)查询命令解释
man 命令 或者 命令 --help
man命令一般用于查询普通命令,就是存在于系统文件中的命令,而help是用来查询内置命令,命令在系统中不存在文件,存在于bash解释器中。
查看一条命令是否存在,使用which+命令来查询:
查看当前bash下的内置命令,使用man+cd,找到bash下的所有内置命令,发现cd内置命令在bash中
使用info+命令也可以查询命令相关信息,但是用的很少。
(2)linux关机重启注销
立即重启:shutdown -r now,-r就是reboot的意思
立即关机:shutdown -h now,-h就是halt的意思
或者直接用systemctl halt、systemctl poweroff、systemctl reboot或者shutdown命令,也可以关机。
Linux常用命令
Linux命令的语法格式为:命令 [参数选项] [文件或路径],其中中括号中的东西不是必须的,是可选的。
(1)创建文件
touch 文件名
如上图在root目录下,创建了一个clyang.txt的文件。
(2)删除文件
rm -f 文件名,其中-f的作用是忽略是否存在文件,直接执行删除。
Windows和Linux的目录结构
Windows分为好几个盘,如C,D,E等,有多少个盘就有多少个树形结构,并且各个分区是隔离的,如果是Linux操作系统,则是只有一棵树,只有一个根,并且文件之间可以关联。
(1)查看当前目录
pwd,是简写,为查看当前目录。
查看当前目录,如图发现在根目录下:
(2)切换工作目录
cd,是change directory的简写,如下图切换到/opt目录下
cd - 去上一次所在的目录
cd ~ 去家目录
cd . 去当前目录
cd .. 去上一级目录
cd命令切换目录时,有需要切换相对路径或者绝对路径的说法,但凡有"/"的路径都是绝对路径,否则就是相对路径,如下图使用绝对路径切换到根目录,然后在根目录下使用相对路径切换到usr目录下。
(3)tree命令,查找系统目录结构,以树形结构显示目录
使用这个命令需要安装软件tree,如果忘记安装需要使用yum install tree -y来完成安装。
当前我的是安装了的。
下面tree命令看下启动分区下的目录结果,如下所示,在windows中也有类似的命令。
如果只想显示一层目录,需要加参数L,如tree -L 1 /。
可以看出来目录结构清爽了很多,只显示了一级目录。
如果只显示目录使用命令 tree -d /boot
可以同时组合上面的命令,只显示一级目录,并且只显示文件夹目录,使用命令tree -L 1 -d /boot
(4)创建目录
mkdir 是make directories的简写,如在根目录下创建一个目录test,使用mkdir test完成。
上面是使用相对路径创建的目录,如果使用绝对路径,就是到了根目录下,使用mkdir /test
创建目录只有一个参数 -p,代表如果有目录了不报错,如果有需要创建一个父目录。
如图所示在家目录下新建一个clyang的目录,clyang目录下面新建一个test目录,当没使用-p参数时会报错提示不能创建目录,使用后就成功创建了目录。
目录和文件名不能重复,linux下一切皆文件。
(5)创建一个文件,使用touch命令,以前有学习过。
如果要在linux下创建很多目录,使用命令就会相对方便,如下图创建了100个text文件,使用{1..100}命令组合文件名完成。
echo命令是打印一行文本的命令,可以使用它打印{1..100}查看效果。
(6)rename命令可以修改文件名,可以用来批量修改,语法为rename 修改对象 修改后样子 符合条件的对象,可以参照man rename里面例子进行名字批量修改。
先创建200个文件
1 [root@node02 /home/test/name]]# touch foo{1..200} 2 [root@node02 /home/test/name]]# ls 3 foo1 foo117 foo135 foo153 foo171 foo19 foo27 foo45 foo63 foo81 4 foo10 foo118 foo136 foo154 foo172 foo190 foo28 foo46 foo64 foo82 5 foo100 foo119 foo137 foo155 foo173 foo191 foo29 foo47 foo65 foo83 6 foo101 foo12 foo138 foo156 foo174 foo192 foo3 foo48 foo66 foo84 7 foo102 foo120 foo139 foo157 foo175 foo193 foo30 foo49 foo67 foo85 8 foo103 foo121 foo14 foo158 foo176 foo194 foo31 foo5 foo68 foo86 9 foo104 foo122 foo140 foo159 foo177 foo195 foo32 foo50 foo69 foo87 10 foo105 foo123 foo141 foo16 foo178 foo196 foo33 foo51 foo7 foo88 11 foo106 foo124 foo142 foo160 foo179 foo197 foo34 foo52 foo70 foo89 12 foo107 foo125 foo143 foo161 foo18 foo198 foo35 foo53 foo71 foo9 13 foo108 foo126 foo144 foo162 foo180 foo199 foo36 foo54 foo72 foo90 14 foo109 foo127 foo145 foo163 foo181 foo2 foo37 foo55 foo73 foo91 15 foo11 foo128 foo146 foo164 foo182 foo20 foo38 foo56 foo74 foo92 16 foo110 foo129 foo147 foo165 foo183 foo200 foo39 foo57 foo75 foo93 17 foo111 foo13 foo148 foo166 foo184 foo21 foo4 foo58 foo76 foo94 18 foo112 foo130 foo149 foo167 foo185 foo22 foo40 foo59 foo77 foo95 19 foo113 foo131 foo15 foo168 foo186 foo23 foo41 foo6 foo78 foo96 20 foo114 foo132 foo150 foo169 foo187 foo24 foo42 foo60 foo79 foo97 21 foo115 foo133 foo151 foo17 foo188 foo25 foo43 foo61 foo8 foo98 22 foo116 foo134 foo152 foo170 foo189 foo26 foo44 foo62 foo80 foo99
然后将所有符合foo?的文件,即foo1~9的文件名字重新命名,将序号变成2位并以0开头
1 [root@node02 /home/test/name]]# rename foo foo0 foo? 2 [root@node02 /home/test/name]]# ls 3 foo01 foo11 foo128 foo146 foo164 foo182 foo200 foo40 foo60 foo80 4 foo02 foo110 foo129 foo147 foo165 foo183 foo21 foo41 foo61 foo81 5 foo03 foo111 foo13 foo148 foo166 foo184 foo22 foo42 foo62 foo82 6 foo04 foo112 foo130 foo149 foo167 foo185 foo23 foo43 foo63 foo83 7 foo05 foo113 foo131 foo15 foo168 foo186 foo24 foo44 foo64 foo84 8 foo06 foo114 foo132 foo150 foo169 foo187 foo25 foo45 foo65 foo85 9 foo07 foo115 foo133 foo151 foo17 foo188 foo26 foo46 foo66 foo86 10 foo08 foo116 foo134 foo152 foo170 foo189 foo27 foo47 foo67 foo87 11 foo09 foo117 foo135 foo153 foo171 foo19 foo28 foo48 foo68 foo88 12 foo10 foo118 foo136 foo154 foo172 foo190 foo29 foo49 foo69 foo89 13 foo100 foo119 foo137 foo155 foo173 foo191 foo30 foo50 foo70 foo90 14 foo101 foo12 foo138 foo156 foo174 foo192 foo31 foo51 foo71 foo91 15 foo102 foo120 foo139 foo157 foo175 foo193 foo32 foo52 foo72 foo92 16 foo103 foo121 foo14 foo158 foo176 foo194 foo33 foo53 foo73 foo93 17 foo104 foo122 foo140 foo159 foo177 foo195 foo34 foo54 foo74 foo94 18 foo105 foo123 foo141 foo16 foo178 foo196 foo35 foo55 foo75 foo95 19 foo106 foo124 foo142 foo160 foo179 foo197 foo36 foo56 foo76 foo96 20 foo107 foo125 foo143 foo161 foo18 foo198 foo37 foo57 foo77 foo97 21 foo108 foo126 foo144 foo162 foo180 foo199 foo38 foo58 foo78 foo98 22 foo109 foo127 foo145 foo163 foo181 foo20 foo39 foo59 foo79 foo99
然后将所有foo??的文件重新命名,将序号变成3位并以0开头
1 [root@node02 /home/test/name]]# rename foo foo0 foo?? 2 [root@node02 /home/test/name]]# ls 3 foo001 foo021 foo041 foo061 foo081 foo101 foo121 foo141 foo161 foo181 4 foo002 foo022 foo042 foo062 foo082 foo102 foo122 foo142 foo162 foo182 5 foo003 foo023 foo043 foo063 foo083 foo103 foo123 foo143 foo163 foo183 6 foo004 foo024 foo044 foo064 foo084 foo104 foo124 foo144 foo164 foo184 7 foo005 foo025 foo045 foo065 foo085 foo105 foo125 foo145 foo165 foo185 8 foo006 foo026 foo046 foo066 foo086 foo106 foo126 foo146 foo166 foo186 9 foo007 foo027 foo047 foo067 foo087 foo107 foo127 foo147 foo167 foo187 10 foo008 foo028 foo048 foo068 foo088 foo108 foo128 foo148 foo168 foo188 11 foo009 foo029 foo049 foo069 foo089 foo109 foo129 foo149 foo169 foo189 12 foo010 foo030 foo050 foo070 foo090 foo110 foo130 foo150 foo170 foo190 13 foo011 foo031 foo051 foo071 foo091 foo111 foo131 foo151 foo171 foo191 14 foo012 foo032 foo052 foo072 foo092 foo112 foo132 foo152 foo172 foo192 15 foo013 foo033 foo053 foo073 foo093 foo113 foo133 foo153 foo173 foo193 16 foo014 foo034 foo054 foo074 foo094 foo114 foo134 foo154 foo174 foo194 17 foo015 foo035 foo055 foo075 foo095 foo115 foo135 foo155 foo175 foo195 18 foo016 foo036 foo056 foo076 foo096 foo116 foo136 foo156 foo176 foo196 19 foo017 foo037 foo057 foo077 foo097 foo117 foo137 foo157 foo177 foo197 20 foo018 foo038 foo058 foo078 foo098 foo118 foo138 foo158 foo178 foo198 21 foo019 foo039 foo059 foo079 foo099 foo119 foo139 foo159 foo179 foo199 22 foo020 foo040 foo060 foo080 foo100 foo120 foo140 foo160 foo180 foo200
最后全部修改完成,并完成自然排序。
以上即linux系统下常用快捷键和命令的记录。