您的位置:首页 > 运维架构 > Linux

linux 目录结构及文件基本操作

2016-12-09 00:00 405 查看
基本结构





cd 命令

$ cd .. #进入上一级目录   ..上级目录  .当前目录
$ pwd #当前位置
$ cd ~  # 或者 cd /home/<你的用户名>
$ cd /usr/local/bin # 绝对路径
$ cd ../../usr/local/bin # 相对路径


二、Linux 文件的基本操作

新建空白文件

$ touch 文件

新建目录

$ mkdir 目录名

使用
-p
参数,同时创建父目录(如果不存在该父目录),如下我们同时创建一个多级目录(这在有时候安装软件,配置安装路径时非常有用):

$ mkdir -p father/son/grandson


复制文件

使用
cp
(copy)命令复制一个文件或目录到指定目录

$ cp 文件名 目的目录


复制目录

要成功复制目录需要加上
-r
或者
-R
参数,表示递归复制,就是说有点“株连九族”的意思:

$ cp -r 源目录 目的目录


删除文件

使用
rm
(remove files or directories)命令,删除一个文件或目录:

$ rm 目录 或者 文件名   添加参数 -f 忽略提示


删除目录

跟复制目录一样,要删除一个目录,也需要加上
-r
-R
参数:

$ rm -r 目录


移动文件

mv 源目录文件 目的目录


重命名文件

mv 旧的文件名 新的文件名


批量重命名

要实现批量重命名,mv 命令就有点力不从心了,我们可以使用一个看起来更专业的命令
rename
来实现。不过它是要用 perl 正则表达式来作为参数,关于正则表达式我们要在后面才会介绍到,这里只做演示,你只要记得这个
rename
命令可以批量重命名就好了,以后再重新学习也不会有任何问题,毕竟你已经掌握了一个更常用的
mv
命令。

# 使用通配符批量创建 5 个文件
$ touch file{1..5}.txt

# 批量将这 5 个后缀为 .txt 的文本文件重命名为以 .c 为后缀的文件
$ rename 's/\.txt/\.c/' *.txt

# 批量将这 5 个文件,文件名改为大写
$ rename 'y/a-z/A-Z/' *.c

简单解释下上面的命令,
rename
是先使用第二个参数的通配符匹配所有后缀为
.txt
的文件,然后使用第一个参数提供的正则表达式将匹配的这些文件的
.txt
后缀替换为
.c
,这一点在我们后面学习了
sed
命令后,相信你会更好的理解。

5.查看文件

使用
cat
,
tac
nl
命令查看文件

这两个命令都是用来打印文件内容到标准输出(终端),其中
cat
为正序显示,
tac
倒序显示。

比如我们要查看之前从"/etc"目录下拷贝来的
passwd
文件:

$ cat passwd

可以加上
-n
参数显示行号:

$ cat -n passwd

nl
命令,添加行号并打印,这是个比
cat -n
更专业的行号打印命令。

这里简单列举它的常用的几个参数:

-b : 指定添加行号的方式,主要有两种:
-b a:表示无论是否为空行,同样列出行号("cat -n"就是这种方式)
-b t:只列出非空行的编号并列出(默认为这种方式)
-n : 设置行号的样式,主要有三种:
-n ln:在行号字段最左端显示
-n rn:在行号字段最右边显示,且不加 0
-n rz:在行号字段最右边显示,且加 0
-w : 行号字段占用的位数(默认为 6 位)


使用
more
less
命令分页查看文件

如果说上面的 cat 是用来快速查看一个文件内容的,那么这个
more
less
就是天生用来"阅读"一个文件的内容的,比如说"man"手册内部就是使用的 less 来显示内容。其中
more
命令比较简单,只能向一个方向滚动,而"less"为基于"more"和"vi"(一个强大的编辑器,我们有单独的课程来让你学习)开发,功能更强大。less 的使用基本和 more 一致,具体使用请查看 man 手册,这里只介绍 more 命令的使用。

使用
more
工具打开
passwd
文件:

$ more passwd

打开后默认只显示一屏内容,终端底部显示当前阅读的进度(百分比)。可以使用
Enter
键向下滚动一行,使用
Space
键向下滚动一屏,按下
h
显示帮助,
q
退出

使用
head
tail
命令查看文件

这两个命令那些性子比较急的人应该会比较喜欢,因为它们一个是只查看的头几行(默认为10行,不足10行则显示全部)和尾几行。还是拿 passwd 文件举例,比如当我们想要查看最近新增加的用户,那么我们可以查看这个
/etc/passwd
文件,不过我们前面也看到了,这个文件里面一大堆乱糟糟的东西,看起来实在费神啊。这里想到系统新增加一个用户,应该会将用户的信息添加到passwd文件的最后,那么这时候我们就可以使用
tail
命令了:

$ tail /etc/passwd

甚至更直接的只看一行, 加上
-n
参数,后面紧跟行数:

$ tail -n 1 /etc/passwd

关于
tail
命令,不得不提的还有它一个很牛的参数
-f
,这个参数可以实现不停地读取某个文件的内容并显示。这可让我们动态查看日志起到实时监视的作用

6.查看文件类型

$ file /bin/ls


7.编辑文件

$ vim 文件名
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: