最近想学学LInux系统,但是当看到《鸟哥私房菜》那页码有一千七百多页时,瞬间吓蒙了。我觉得在学习linux前,还是先学学linux常用命令可能是当前更加迫切的。之前因为一直怀着一种侥幸心理,觉得linux命令不难,需要用到的时候只要网上一搜就可以了,但是现在觉得自己的这种想法非常愚蠢。有时候需要编辑测试服务器的一些配置时,比如vi编辑文件时,常常因为记不得命令但是又把文件改乱了,慌乱之中又不知道怎么撤销或者不保存退出,最终只能是偷偷地把客户端断开连接。,所以我觉得还是有必要学习一下linux的常规命令,哪怕对内核不是那么了解,最好能够记得一些基础命令。
为了学习一下linux命令,本人在电脑中装了Vwware,再Vwware中装了红帽linux系统。
现在主要介绍linux的文件的一下操作命令:
一、mkdir命令
格式:mkdir [选项] dirName
[选项]有两个
-m:用来设置文件夹读取权限,也可以用chmod实现
-p:用来创建多级目录,如果目录(文件夹)已经存在,不报错
1)新建一个目录20161218,mkdir 20161218
[root@bogon ~]$ mkdir 20161218
[root@bogon ~]$ ls
20161218 Desktop
2)使用mkdir -p 创建多级目录,在20161218文件夹下创建demo子目录,demo子目录下创建01子目录;而且两次执行mkdir -p demo/01,并没有报错[root@bogon 20161218]$ mkdir -p demo/01
[root@bogon 20161218]$ ls
demo
[root@bogon 20161218]$ mkdir -p demo/01
[heshuhua@bogon 20161218]$
3)使用touch创建文件,touch filaName
[root@bogon 20161218]$ cd demo/01
[root@bogon 01]$ ls
[root@bogon 01]$ touch 11.log
[root@bogon 01]$ ls
11.log
[root@bogon 01]$
二、vi编辑系列命令在第一步新建的11.log下操作:vi fileName
1、插入文本类命令
i :在光标前
I :在当前行首
a:光标后
A:在当前行尾
o:在当前行之下新开一行
O:在当前行之上新开一行
r:替换当前字符
R:替换当前字符及其后的字符,直至按ESC键
备注:
1)因为linux文本编辑不好演示,所以此处演示省略。但是有几点要注意,每次输入文本编辑命令进行编辑之后,都要按“ESC”,退出当前编辑命令才能输入其它的文本类命令。
2)r只能每次替换一个字符,R才能一直输入替换后面的字符
3)注意a是在光标后编辑,比较符合一般的输入习惯;i是在光标前编辑。
2、删除命令
dd:删至行首【从其它博客看是do命令,但是本人操作的时候do好像没效果,dd才删至行首】
d$:删至行尾
ndd:删除当前行及其后n-1行
x或X:删除一个字符,x删除光标后的,而X删除光标前的
u:撤销操作【本人感觉,这个命令比较实用,因为刚开始命令不熟悉的时候,输错在所难免】
3、移动命令:
^ : 跳至行首的第一个字符
$ :跳至行尾
4、退出命令
首先先按"ESC"退出当前插入文本内命令命令,
:q! 不保存退出
:wq 保存退出
备注:这里列出的命令并不全,我觉得基础操作够用就行,我一直相信假如所有的命令都是重点,那就是没有重点,最终还是什么都记不住。
三、chmod 设置文件或目录的权限
Linux或者Unix系统中用户分为:所有者用户u,跟所有者同一组的用户g,其它用户o;都可以设置rwx权限,用二进制标识就是111。r:4,w:2,x:1,rwx:7;另外可以用3位0-7的数字设置权限或者用
u=rwx,g=rwx,o=rwx这样的方式。
1、chmod的两种设置读写权限的方式:
[root@bogon 01]$ touch 22.log
[root@bogon 01]$ touch 33.log
[root@bogon 01]$ ls -l 22.log
-rw-rw-r-- 1 heshuhua heshuhua 0 Dec 18 01:27 22.log
[root@bogon 01]$ chmod 777 22.log
[root@bogon 01]$ ls -l 22.log
-rwxrwxrwx 1 heshuhua heshuhua 0 Dec 18 01:27 22.log
[root@bogon 01]$ ls -l 33.log
-rw-rw-r-- 1 heshuhua heshuhua 0 Dec 18 01:27 33.log
[root@bogon 01]$ chmod u=rwx,g=rwx,o=rwx 33.log
[root@bogon 01]$ ls -l 33.log
-rwxrwxrwx 1 heshuhua heshuhua 0 Dec 18 01:27 33.log
[root@bogon 01]$
2、可用-R参数对目录及其子目录或者文件递归设置权限。
[root@bogon demo]$ chmod -R 755 01
[root@bogon demo]$ ls -l 01
total 16
-rwxr-xr-x 1 heshuhua heshuhua 36 Dec 18 01:26 11.log
-rwxr-xr-x 1 heshuhua heshuhua 0 Dec 18 01:27 22.log
-rwxr-xr-x 1 heshuhua heshuhua 0 Dec 18 01:27 33.log
[root@bogon demo]$
四、删除命令
rm [参数] 目录或者文件名
可选参数:
-i 删除前逐一询问确认。
-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
-r 将目录及以下之档案亦逐一删除。
1) rm fileName 删除文件,注意rm 目录会报错。
2)rm -r 文件名或者目录名 -r参数递归删除目录,这个命令也可以删除文件
[root@bogon demo]$ cd 01
[root@bogon 01]$ ls
11.log 22.log 33.log
[root@bogon 01]$ rm 33.log
[root@bogon 01]$ ls
11.log 22.log
[root@bogon 01]$ pwd
/home/heshuhua/20161218/demo/01
[root@bogon 01]$ cd 01
bash: cd: 01: No such file or directory
[heshuhua@bogon 01]$ ls
11.log 22.log
[root@bogon 01]$ cd ..
[root@bogon demo]$ ls
01
[root@bogon demo]$ rm -rf 01
[root@bogon demo]$ ls
[root@bogon demo]$