Linux 文件、目录操作
Linux中的路径只能使用/,不能使用\ 或\\。
cd 切换目录
cd / 切换到系统根目录,cd即change dir
cd /bin 切换到根目录下的bin目录
cd .. 切换过到当前目录的上一级目录,可以用..,也可以用../
cd ./bin 切换到当前目录下的bin目录,.表示当前目录
cd ~ 切换到当前用户的根目录,比如我的用户名是chy => /home/chy
cd - 切换到上一个目录,是上一个,不是上一级,类似于历史记录中的上一个,很多终端的-都表示上一个
Linux只有一个盘符,只有一个根目录/,没有切换盘符的说法。
新建、删除目录
mkdir resource 在当前目录下新建resource目录,mkdir resource/img,如果resource不存在,会报错
mkdir -p resource/img 如果前面的目录不存在,会自动创建
rmdir resource 删除当前目录下的resource目录,resource目录要是空的才能被删除(空的子目录都不能有),否则会报错
rm -r test 递归删除test目录(如果test下面有子文件、子目录,会递归删除)
pwd 显示当前路径
列出子文件、子文件夹
ls 默认不会列出隐藏的,ls即list,可选参数:
- -a 列出所有的(包括隐藏的),a即all,隐藏的文件|目录以.开头。
- -l 列出详细信息,文件尺寸只有数值,没有单位,默认字节Byte
- -h 友好显示,文件尺寸带有单位K、M等,方便阅读。
不指定文件|文件夹,默认列出当前目录的。
ls -l /home/chy 指定文件|目录后,只列出该文件|目录的信息,不会列出子文件、子目录。
显示子孙文件夹的大小
du /home/chy 显示指定目录下子孙文件、目录的尺寸。如果目标路径是文件,则显示该文件的尺寸。默认数值不带单位。
- 可选参数:-h 友好显示,带单位
- 缺省目标路径时,默认为当前路径
ls 可列出详细信息,du只列出尺寸。
文件的新建、删除
touch 1.txt 在当前目录下新建文件
touch doucument/1.txt 在当期目录下的document目录下新建文件1.txt,如果document目录不存在,会报错
rm 1.txt 删除当前目录下的1.txt
查看文件内容
cat document/1.txt 一次性列出文件的所有内容
cat -n 1.txt 使用-n可显示行号
head -n 5 1.txt 只列出前5行
head -5 1.txt 可简写
tail -n 5 1.txt 只列出最后5行
tail -5 1.txt 可简写
more 1.txt 一页一页地显示,浏览过程中可用的键:
- 空格键 往下翻一页
- Enter 显示下一行的内容
- :f 显示当前行号、文件名(前面有冒号)
- q 不再显示该文件内容,即quit,退出文档内容显示
- /字符串 往下搜索指定的字符串,直接跳到匹配的页面
less 1.txt 也是一页一页地显示,但比more功能更多,浏览过程中可用的键:
- 空格键或PageDown 往下翻一页
- PageUp 向上翻一页
- Enter 显示下一行的内容
- :f 显示当前页面的详细信息,比如行号区间、字节数、字符数占比等
- q 不再显示该文件内容,即quit,退出文档内容显示
- /字符串 往下搜索指定的字符串,直接跳到匹配的页面
- ?字符串 往上搜索指定的字符串,直接跳到匹配的页面
与more相比,less多了往上的功能。
grep 查找文件内容
grep image 1.txt 列出1.txt中含有字符串“image”的行,并将“image”高亮显示(红色)
wget 从网上下载文件
wget https://www.runoob.com/wp-content/uploads/2014/06/363003_1227493859FdXT.png
wget即web get,会自动保存到当前目录
cp 文件|目录的复制
cp document/1.txt 1.txt 复制,源路径、目标路径,只能复制文件,不能复制目录
cp document/1.txt /home/chy 复制到指定的目录下。如果都是目录,那就是指定目标目录名了。
cp 1.txt 2.txt 可更改目标文件名
cp document/1.txt ../ 复制到上一层目录中
如果要复制目录,需加参数-r(递归复制):
cp -r document test 可指定目标目录名,此处指定为test
cp -r document/1 test/1
如果存在同名的目标文件|目录,默认直接覆盖,可使用-i指定存在同名目标文件|目录时要先询问是否覆盖:
cp -i document/1.txt 1.txt
Y|y是覆盖,N|n是不覆盖
mv 文件|目录的剪切
mv document/1.txt 2.txt 可指定目标文件名
mv document/1.txt 1 如果目标是目录,会剪切到该目录下
mv 1.txt 2.txt 如果都是文件|目录,且都在同一目录下,即重命名,将1.txt重命名为2.txt
mv 1 2 将目录1重命名为2
剪切目录时会递归剪切所有的子文件、子目录,不需要加参数。
如果存在同名的目标文件|目录,默认直接覆盖,可用-i指定先询问:
mv -i document/1.txt 1.txt 存在相同的目标文件|目录时,先询问是否覆盖
tar 文件|目录的打包|解开
tar -cvf 1.tar 1.txt 将1.txt打包为1.tar,
tar -cvf document.tar document 打包目录
tar -zcvf document.tar.gz document 打包并压缩
tar -xzvf document.tar.gz 解开,会解压到终端当前使用的目录下(不是.tar.gz所在目录下)
tar -xzvf apache-tomcat-7.0.100.tar.gz -C /root 参数-C可指定解压到哪个目录下
-c是创建新的tar文件,-v是显示运行过程的信息,-f是指定文件名
-x解开,
-z是压缩、解压时过滤归档,压缩、解压都要添加此参数。
参数可以合并写,比如 tar -c -v -f 可以写成 tar -cvf
输出重定向
默认输出是输出到控制台,比如cat 、ls这些命令都是将结果输出到控制台的。
>、>>可以将输出重定向到文件,不将结果输出到控制台,而是输出到文件中。
ls > 1.txt 如果文件不存在,会先创建再写入。如果文件已存在,会覆盖原有内容。
ls > document/1.txt 文件不存在会自动创建,但路径中的目录不存在,会报错。
cat 1.txt > 2.txt
ls >> 1.txt >>和>差不多,不同的是:>会覆盖文件的原有内容,>>是追加。
>、>>的前面只能是一个命令,不能是普通字符串。
Linux 文件、目录操作的更多相关文章
- Linux 文件/目录操作详解
目录 Linux 文件/目录操作详解 初识Linux 一.文件/目录显示命令 ls 二.目录创建命令 mkdir 三.目录转移命令 cd 四.当前目录显示命令 pwd 五.文件处理命令 rmdir 六 ...
- Linux 指令(一)文件/目录操作
1. 创建目录 mkdir 格式 mkdir [OPTION]... DIRECTORY... 选项 -p 递归创建 -v 创建时提示 例: root@ubuntu:/home/eko/x# mkdi ...
- liunx学习(一):linux下目录操作大全
Linux C函数之文件及目录函数(全):http://blog.sina.com.cn/s/blog_695e489c01013ldd.html linux目录操作发:http://www.cnbl ...
- Linux文件/目录权限设置命令:chmod
文件/目录权限设置命令:chmod 这是Linux系统管理员最常用到的命令之一,它用于改变文件或目录的访问权限.该命令有两种用法: 用包含字母和操作符表达式的文字设定法 其语法格式为:chmod [w ...
- linux 文件常用操作
linux 文件基本操作 新建文件:touch test 不会替换重名文件,并且linux一切都是文件,文件夹和文件不能重名 新建文件夹:mkdir test使用 -p 参数,同时创建父目录(如果不存 ...
- linux文件测试操作
1.文件测试操作 返回 true 如果... -e 文件存在 -a 文件存在 这个选项的效果与-e 相同.但是它已经被弃用了,并且不鼓励使用 -f file 是一个 regular 文件(不是目录或者 ...
- Linux文件IO操作函数概述
文件概述 Linux中,一切皆文件.文件为操作系统服务和设备提供了一个简单而一致的接口.这意味着程序完全可以像使用文件那样使用磁盘文件.串行口.打印机和其他设备. 也就是说,大多数情况下,你只需要使用 ...
- Linux文件IO操作
来源:微信公众号「编程学习基地」 目录 文件操作 Linux文件类型 Linux文件权限 修改文件权限 Linux error 获取系统调用时的错误描述 打印错误信息 系统IO函数 open/clos ...
- Python技法:实用运维脚本编写(进程/文件/目录操作)
Python在很大程度上可以对shell脚本进行替代.笔者一般单行命令用shell,复杂点的多行操作就直接用Python了.这篇文章就归纳一下Python的一些实用脚本操作. 1. 执行外部程序或命令 ...
- Python - os 文件/目录操作
最近经常用到 os 操作文件/目录,感觉挺好使的,但是一直没有系统的梳理学习一下, 今天想借此机会整理一下工作中常用的方法,也算自己总结学习的一个积累吧. 直接上代码,注释明了 #-*-coding: ...
随机推荐
- Python学习,第一课 - 基础学习
前言. 本内容全部以python3所讲 一.Python安装 windows 1.下载安装包 https://www.python.org/downloads/ 2.安装 默认安装路径:C:\pyth ...
- A novel multi-swarm particle swarm optimization with dynamic learning strategy(一种新颖的具有动态学习策略的多种群粒子群优化算法)
1.核心 在每个子种群的粒子被划分为普通粒子(ordinary particles)和交流粒子(communication particles),在每次迭代过程中,不同的粒子执行不同的进化操作.普通粒 ...
- python笔记11
今日内容 函数小高级 lambda 表达式 内置函数 内容回顾 函数基本结构 参数 形参 基本参数:def func(a1,a2):pass 默认值:def func(a1,a2=123):pass ...
- 设计模式-05建造者模式(Builder Pattern)
1.模式动机 比如我们要组装一台电脑,都知道电脑是由 CPU.主板.内存.硬盘.显卡.机箱.显示器.键盘和鼠标组成,其中非常重要的一点就是这些硬件都是可以灵活选择,但是组装步骤都是大同小异(可以组一个 ...
- 九 Shell中的数组
数组:用一个变量存储一组数据,并能够对这组数据中的某一个数据单独操作. 数组的类型:一维数组.二维数组.多维数组 变量的类型 Shell中默认无类型 变量的值默认均视为文本 用在数字运算中时,自动将其 ...
- 18、DHCP
Dynamic Host Configuration Protocol DHCP的前身:Bootstrap DHCP的封装 DHCP基本知识点 1 .DHCP协议在RFC2131中定义,使用udp协议 ...
- objectarx 统计面积
除了最后一个输出面积到excel没做,其他都是做了的.只支持AcDbPolyline和AcDbCircle.这是我模仿网上的动态图做的,主要是为了练习.下面我把自己的一些心得分享出来.使用到的一些帮助 ...
- remote: error: hook declined to update refs/heads
打开工程目录下.git/config文件,补充user信息 , [user] username = xxx email = xxx@126.com 打开工程目录下.git/description文件, ...
- Codeforces_462_B
http://codeforces.com/problemset/problem/462/B 简单的贪心,排序即可看出来. #include<cstdio> #include<ios ...
- HDU 1004 Let the Balloon Rise(STL初体验之map)
Problem Description Contest time again! How excited it is to see balloons floating around. But to te ...