3.3.2 基本的Linux命令操作示例
您可以在百度里搜索“跟老男孩学Linux运维:Web集群实战 艾草文学(www.321553.xyz)”查找最新章节!
3.3.2 基本的Linux命令操作示例
在了解Linux命令之前,先看看命令操作语法格式图,如图3-28所示。
图3-28 Linux命令操作语法格式图
在Linux系统运维工作中,常用操作大多都是在命令行下实现的。
[root@oldboy ~]# ←就是在这样的提示符下敲命令。
Linux系统命令操作语法的格式:
命令 [参数选项] [文件或路径] rm -f /etc/hosts
说明:
·中括号([])表示可选,即命令的参数及路径文件是可选的。
·参数选项表示使用一个命令的不同功能。
例1:在根“/”下创建一个目录data。
可采用如下方法:
[root@www ~]# mkdir /data ←此命令就是答案了。 [root@www ~]# ls -ld /datadrwxr-xr-x 2 root root 4096 8月 3 14:33/data此命令是查看data目录是否创建成功,ls是list列表的意思。-ld是ls的常用参数,是以长格式查看目录的属性
除了上面的方法外,还可以用下面的方法:
[root@www ~]# rm -r /data ←删除前面建立的/data目录。 rm:是否删除目录 "/data"?y←输入y表示确认删除,y是yes的缩写。 [root@www ~]# cd /←进入到根目录/下,强调下"/"在linux里是根的意思, 即所有目录的顶点。 [root@www /]# mkdir data←创建data目录,注意不是date,也不带斜线"/"了, 因为已经进入了"/"。 [root@www /]# ls -ld data←查看创建data目录本身 drwxr-xr-x 2 root root 4096 8月 3 14:37 data
提示:Windows下的目录路径样式为d:data,而Linux下的路径就是/data/。
记忆方法:创建目录的命令可以理解为英文全称make directory,缩写后就是mkdir。
例1用到的Linux命令知识点如下。
·cd后跟相对路径或绝对路径,表示进入对应目录,cd/表示进入根目录下。记忆方法===>changedirectory,中文意思是变换目录。
·相对路径概念:不从“/”开始,而是从当前目录开始的路径。如data/test、mnt/oldboy。
·绝对路径概念:从“/”开始的路径,就叫绝对路径。如/data/test、/mnt/oldboy。
·mkdir[-mp][目录名称]:表示建立目录,默认可以不加参数,如果实现特殊功能可加如下参数。
·-m:这个参数用来指定要创建目录的权限,但很少用,一般是创建目录后用chmod来处理。如mkdir-m777/tmp/test。即建立一个权限为777的目录。
·-p:这个参数用来递归创建目录,如mkdir-p/data/test/,这是mkdir的常用参数。
例2:在/data目录下面建立一个文件,名字为oldboy.txt。
方法1:
[root@www /]# touch /data/oldboy.txt ←在/data目下创建oldboy.txt。[root@www /]# ls -l /data/oldboy.txt ←查看创建的oldboy.txt,注意,没有用到上文提到的-d参数了,这是为什么呢?因为要 查看的目标文件不是目录,所以不用-d参数了 -rw-r--r-- 1 root root0 8月 3 14:46 /data/oldboy.txt
方法2:
[root@www /]# cd /data [root@www data]# touch oldboy.txt←如果同名文件存在,不会提示也不会覆盖, 会更新oldboy.txt文件的时间戳。 [root@www data]# ls -loldboy.txt -rw-r--r-- 1 root root 0 8月 3 14:47 oldboy.txt←比前文的oldboy.txt时间新
例2用到的Linux命令知识点如下:
·touch[文件名]:因为touch是“摸”的意思,所以该命令表示“摸”一下文件,其作用是如果文件不存在,就建立新文件,如果存在,就改变文件的访问时间信息。
例3:为oldboy.txt增加内容“I am studying linux.”。
方法1:常规编辑方法。
在data目录下执行“vi oldboy.txt”命令进入vi编辑器(默认为命令模式),单击a或i进入编辑模式后敲入内容“Iam studying linux.”,然后按键盘上的Esc键退出编辑模式(进入命令模式),最后敲“:wq命令”保存并退出。
图3-29 vi/vim编辑器工作模式简图
图3-29为vi/vim编辑器的工作模式简图。
方法2:往文件尾部插入内容的常用命令是echo,注意,内容都是放到文件尾部的。
[root@oldboy ~]# echo 'I am studyinglinux.'>>/data/oldboy.txt←这个在企业里很常用:内容追加到文件结尾。特殊编辑文件的方法,通过echo命令使用单引号把引号内的内容通过">>"输出重定向符号追加到/data/oldboy.txt,注意:追加就是增加,不是覆盖。[root@oldboy ~]# cat /data/oldboy.txt ←检查追加的结果 I am studyinglinux.
例3用到的Linux命令知识点如下。
·vi:类似Windows记事本的Linux下的常用编辑器,如果想功能更丰富可以用vim替代vi,vi/vim的内部有很多命令技术点要掌握,例如方法1提到的i就是insert,进入插入编辑模式状态的意思,Esc键是切换到命令模式,wq就是写入后退出编辑器的意思(w是write,q为quit)。命令模式下敲冒号“:”,后面才可以接命令参数。
·echo:一个打印输出内容的常用命令,配合“>”或“>>”可以清除文件内容及追加内容到文件尾部,这个命令须掌握。“>”意思为重定向,会清除文件里所有旧的数据,然后增加echo命令后的内容,“>>”为内容追加,只在文件尾部追加需要的内容。
例4:把oldboy.txt文件拷贝到/tmp下。
方法如下:
[root@www data]# cp /data/oldboy.txt /tmp/ ←这个就是拷贝的命令了 [root@wwwdata]# ls -l /tmp/oldboy.txt -rw-r--r-- 1 root root 21 8月 3 15:07/tmp/oldboy.txt [root@www data]# cat /tmp/oldboy.txt I am studyinglinux.提示:有的读者加参数-a ,-p等也可以。拷贝目录并保持属性。更多信息可以执行man cp进行查看
例4用到的Linux命令知识点如下。
在cp[-a i f p r u][源文件][目标文件]的第一个中括号中可加入如下参数。
·-a:相当于-dpr。
·-d:若源文件为链接文件(link file),则复制链接文件属性而非档案本身。
·-p:连同档案的属性一起复制过去,而非使用默认属性。
·-r:递归,用于复制目录。
·-f:强制,若目标档案已经存在且无法开启,则移除后再尝试。
·-i:若目标文件已经存在,在覆盖时会先询问。
·-u:若目标文件存在,则目标文件比源文件旧时才复制。
提示:如果要复制的源文件有多个,那么目的文件在最后,且必须是目录。cp的重要参数是-a、-p、-r。
例5:把/data目录移动到/root下。
方法如下:
[root@www data]# pwd ←打印当前路径 /data [root@www data]# cd /←切换到根目录下 [root@www /]# mv data /root/ ←移动data目录到/root下,移动就是剪切的意思[root@www /]# ls -ld /root/data/ drwxr-xr-x 2 root root 4096 8月 314:46 /root/data/
例5用到的Linux命令知识点如下。
在mv[-i f u][源目录/源文件][目的目录/目的文件]的第一个中括号中可加入如下参数。
·-i:如果目的文件已存在,询问是否覆盖。
·-f:强制执行,不会询问。
·-u:若目的文件存在,则比源文件新时才会移动。
提示:如果要移动的源文件有多个,那么目的文件放在最后,且必须是目录。
例6:进入root目录下的data目录,删除oldboy.txt。
方法如下:
[root@www /]# cd /root/data/ [root@www data]# rm -f oldboy.txt←删除文件,使用-f参数,快速删除,不提示是否删除 [root@www data]# ls
删除命令rm相当于remove(移除)的缩写,删除文件一般用“rmoldboy.txt”,此法会提示你是否确定删除,推荐初学者使用。用“rm-foldboy.txt”删除很快,但是不提示用户进行确认,直接删除,比较危险,容易出错,不推荐初学者使用。
另外,对于文件的删除禁止使用“rm-fr文件名”,这种是杀鸡用牛刀的做法,必须禁止,最多用“rm-f文件”。rm-fr一般用来强制删除目录,非常危险,太多高手发生过严重的错误。
提示:初学者尽量不要用rm命令,如果必须要删除,可以用mv命令替代rm,也就是把文件移动到/tmp下,然后等/tmp分区将要满时一次性删除,使用mv移动文件到/tmp的方法是学习Windows下回收站的功能,减少犯错的机率。这种把/tmp目录当作回收站使用的做法,对初学者来说是一个不错的选择。
前面以问答的形式带大家学习了mkdir、cd、touch、cp、mv、rm等Linux基本命令,捎带学习了pwd、cat、ls、echo等基础命令,怎么样?Linux的命令是不是很简单!更多命令的应用请读者参考其他书籍,或者老男孩即将出版的命令基础书籍或运维班课程。 跟老男孩学Linux运维:Web集群实战