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: ...
随机推荐
- redis server can not continue
- HGE引擎改进——2014/3/4
2014/3/4 更新 1.提升资源包管理效率 2.Show库整合.目前Show库有Picture.Frame.Animation和Particle类,以及PictureData和ParticleSy ...
- Dynamics CRM CE 怎样从 UCI 改为 classic UI
dynamics 现在大力推UCI. 但是对于大部分人来说还是使用不习惯. 怎样从UCI改为classic UI呢 1. 快速的方法 https://xxx.crm.dynamics.com/main ...
- JavaScript 注意
字符串常用方法: 除.length外 都要加括号 trimLeft trimRight L和R要大写. .charAt 类似索引,超出范围为空 ,注意 (At)大小写. 注意 1.st ...
- oracle问题之死锁 (一)
[前言] 遇到 oracle 异常 和 解决实践 系列文章 整理分享 杂症一.oracle死锁 一.症状: 执行SQL或程序时,程序没有响应或SQL执行一直处于执行状态,没有成功,也没有报错. 二.病 ...
- 曹工说Spring Boot源码(14)-- AspectJ的Load-Time-Weaving的两种实现方式细细讲解,以及怎么和Spring Instrumentation集成
写在前面的话 相关背景及资源: 曹工说Spring Boot源码(1)-- Bean Definition到底是什么,附spring思维导图分享 曹工说Spring Boot源码(2)-- Bean ...
- 【干货】零基础30分钟让你拥有一个完整属于自己的短视频APP系统
目录 一.附言: 1 二.购买域名和购买服务器: 2 三.搭建服务器环境: 5 四.配置APP前端部分: 8 1.工具以及文件准备: 9 2.配置后端接口地址 11 3.配置APP启动图和启动图标 ...
- oracle和mysql区别
1.本质的区别.oracle是对象关系数据库管理系统,简称ordbms.mysql是开源关系数据库关系系统,简称rdbms.Oracle是收费的.mysql是开源.免费的. 2.数据库安全性.myql ...
- 2.OpenStack 网络简介(neutron)
OpenStack 网络简介(neutron) 概述和组件 OpenStack 网络允许您创建和管理网络对象, 如网络.子网和端口, 其他 OpenStack 服务可以使用.插件可以实现, 以适应不同 ...
- python day01学习
1.python语言 # 89年 龟叔2.python的特点 # 优点 : 简明 简单 跨平台性好 # 缺点 : 慢 -执行速度相对其他语言慢 # 编程语言的分类: # 编译型语言: c c++ j ...