文档章节

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

风雪满弓刀
 风雪满弓刀
发布于 2016/12/09 18:02
字数 1423
阅读 1
收藏 0

基本结构

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,tacnl命令查看文件

这两个命令都是用来打印文件内容到标准输出(终端),其中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 位)

使用moreless命令分页查看文件

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

使用more工具打开passwd文件:

$ more passwd

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

使用headtail命令查看文件

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

$ tail /etc/passwd

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

$ tail -n 1 /etc/passwd

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

6.查看文件类型

$ file /bin/ls

7.编辑文件

$ vim 文件名

 

© 著作权归作者所有

共有 人打赏支持
风雪满弓刀
粉丝 1
博文 62
码字总数 35930
作品 0
海淀
程序员
linux操作:你至少应该知道这些文件命令

看网上针对*linux基本文件操作文章参差不齐。本文根据个人项目开发经验,主要介绍linux目录结构,及其文件和文件夹的创建,删除,移动,拷贝,望初学者少走弯路。 在正式说linux文件操作命令...

阿小庆
07/13
0
0
ubuntu 安装 broadcom 无线网卡 --新版本的ubuntu 12.04,13 已...

/* *2014/1/22 新增 * 建议安装最新版本的系统, *http://my.oschina.net/startphp/blog/138382 查看一下硬件是否支持 * 不行就用USB 的外置的吧 */ 方便阅读 文章链接 问题 解决之道 解决链...

oiio
2013/01/27
0
7
linux系统中的11选5源码搭建相关命令行

linux目录结构 (1)返回上级目录:cd .. (2)linux文件中11选5源码搭建基本操作:企 娥:217 1793 408 ①新建空白文件eg:touch test 前提是切换到自己的目录下面 文件打包与压缩 (1)tar...

QQ2171793408
06/28
0
0
【Unix】从who,ls,pwd命令到文件

从who命令说起呢是因为《Understanding UNIX/LINUX Programming》chap2讲的是这个。 推荐这本书的原因呢:a.通过命令了解到linux命令的具体处理机制 b.提高了编程技能,了解了APUE里讲的一些...

im天行
2013/01/16
0
0
Redis进阶实践之二如何在Linux系统上安装安装Redis

Redis进阶实践之二如何在Linux系统上安装安装Redis 一、引言 上一篇文章写了“如何安装VMware Pro虚拟机”和在虚拟机上安装Linux操作系统。那是第一步,有了Linux操作系统,我们才可以在该系...

morpheusWB
09/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

RESTful架构详解

1. 什么是REST REST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征)性状态转移。 它首次出现在2000年Roy Fielding的博士论文中,Roy Fielding是HTTP规范的主...

kitty1116
21分钟前
0
0
精通Spring Boot——第十篇:Quartz动态配置定时任务

定时任务简述 定时任务,在企业开发中尤其重要,很多业务都是需要定时任务去做的。比如说10点开售某件东西,凌晨0点统计注册人数,统计其他各种等等。这个时候不可能说让人为的去开启某个开关...

developlee的潇洒人生
23分钟前
0
0
将一些内容输出到文件中

看到一个面试题,如下: 第八题: 一个字符串将其输入到一个文件中,代码如下: <?php$a = '[{"teamId": "43", "serial": "1"},{"teamId": "1", "serial": "2"},{"teamId": "14", "serial":...

vinci321
32分钟前
0
0
nginx的简单使用:负载均衡

nginx:反向代理的服务器;用户发送请求到nginx,nginx把请求发送给真正的服务器,等待服务器处理完数据并返回,再把数据发送给用户。 nginx作为一个反向代理服务器,能缓存我们项目的静态文...

osliang
今天
2
0
网站title标题被改并被百度网址安全中心提醒的解决办法

国庆假日期间我们Sine安全接到众多网站站长求助网站标题被改导致在百度搜索中百度安全中心提醒被拦截,导致网站正常用户无法浏览网站被跳转到一些菠菜du博网站,而且很明显的一个特征就是在百...

网站安全
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部