作者 | 王久一
分类 | Linux
本文章介绍基本的文件操作的命令,命令较多但是非常容易理解,前几篇关于Linux基础的文章可以关注此订阅号,点击底部菜单栏「技术文章」获取。话不多说,咱们开始。
pwd 指令
-
pwd 命令:显示当前工作目录中的绝对路径
如:pwd
ls 指令
基本语法
-
ls [参数] [目录或文件](列出此目录的文件)
常用参数
-
-a :显示当前目录所有文件和目录,包括隐藏文件
-
-l :以列表方式显示信息
-
-h:人性化显示
cd 命令
基本语法
-
cd [选项] (切换到指定目录)
常用选项
-
cd ~ 或者 cd:回到自己家目录
-
cd .. 回到上一级目录
我们在root目录下,如何进入home目录
-
绝对路径:cd /home从根目录开始定位
-
想到路径:cd ../home 当前工作目录开始定位到目标目录
mkdir 命令
基本语法
-
mkdir [选项] (用于创建目录)
常用选项
-
-p: 创建多级目录
应用案例
-
案例一:mkdir /home/jujidi home目录下创建一个聚集地目录
-
案例二:mkdir -p /home/wang/web 创建多级目录(wang和web本来都没有)
rmdir 命令
基本语法
-
rmdir [选项] 要删除的空目录
-
rmdir 无法直接删除非空目录,需要添加 -rf 参数
使用方式
-
rmdir /home/jujidi 删除home下的jujidi空目录
使用细节
-
删除非空目录:mkdir -rf /home/web 删除home目录下web非空目录,web目录不是空目录
touch 命令
基本语法
-
touch 文件名(功能:常见空文件)
使用方式
-
touch web.txt 创建web.txt空文件
扩展
-
touch web1.txt web2.txt 一次创建两个文件
cp 命令
基本语法
-
cp [选项] 源文件 目标位置(功能:拷贝文件到指定目录)
常用选项
-
-r 递归复制整个文件夹
应用案例
-
cp /home/aaa.txt /home/bbbhome目录下的aaa.txt文件复制到home目录下bbb文件夹下
-
cp -r /home/test /home/bbb 把home下方的test目录递归拷贝到bbb目录,test是一个目录并且里面的文件都会递归拷贝
-
\cp -r /home/test /home/bbb 如果test目录和bbb目录有相同的文件,添加\cp可以强行覆盖
rm 命令
基本语法
-
rm [选项] 要删除的文件或目录(功能:移除文件或目录)
常用选项
-
-r :递归删除整个文件夹
-
-f:强制删除不提示
应用案例
-
rm aaa.txt 删除aaa.txt文件(会提示)
-
rm -f bbb.txt 删除bbb.txt文件(不会提示)
-
rm -rf /bbb 删除bbb目录,主要bbb是目录
mv 命令
基本语法
-
mv 旧文件名 新文件名(功能:重命名)
-
mv 待移动文件 目标文件夹(功能:移动文件)
-
当你使用时,如果旧文件名对应的文件就在当前目录,功能是重命名
应用案例
案例一:把aaa.txt 重命名为 bbb.txt
对于上方的命令我们可以这样想,首先它打算把aaa.txt移动到当前目录去,但是当前目录有aaa.txt,所以就判定为重命名。
案例二:把/root目录下bbb.txt移动到/home目录下
对于上方的命令我们可以这样想,首先它打算把bbb.txt移动到home目录去,但是home目录没有bbb.txt,所以就判定为移动,如果有此文件就是重命名。
cat 命令
基本语法
-
cat [选项] 要查看的文件(功能:查看文件内容,只读方式)
常用选项
-
-n:显示行号
应用案例
-
cat -n /etc/profile 查看profile文件,并显示行号,这个时候把文件全部打开并直接到文末。
-
cat -n /etc/profile | more 查看profile文件,显示行号并分页显示,按空格键翻页。
more 命令
基本语法
-
more 要查看的文件
-
more指令是基 于vi编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容,more指令有若干快捷键。
快捷键
应用案例
-
more /etc/profile 查看文件profile并分页显示
less 命令
基本语法
-
less 要查看的文件
-
less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端,优点是:不是将整个文件加载之后才显示,而是根据显示需要加载内容,显示大型文件效率较高。
快捷键
应用案例
-
less 很大的小说.txt 查看文件 很大的小说.txt 文件,并且分页显示
> 指令 和 >> 指令
基本介绍
-
> 输出重定向(会将原来文件覆盖)
-
>> 追加(不会覆盖,追加到末尾)
基本语法
-
ls -l > 文件(列表内容写入文件中,覆盖写)
-
ls -al >>文件(列表内容追加到文件的末尾,不覆盖)
-
cat 文件1 > 文件2 (将文件1内容覆盖到文件2)
应用案例
-
ls -l > a.txt 把 ls -l 命令后显示的内容写入文件a.txt,a.txt不存在会自动创建,若存在会覆盖内容
-
ls -al >> b.txt 把 ls -l 命令后显示的内容追加文件b.txt,不是覆盖是追加
-
cat a.txt > c.txt 把文件a.txt文件内容写入c.txt文件,c.txt不存在会自动创建,若存在会覆盖内容
-
echo "聚集地" >> c.txt 把聚集地三个字追加到c.txt文件中
-
ls -l /home/ > /home/info.txt 把home目录下的文件列表写入到 /home/info.txt中
-
cal >> /home/mycal 把当前日历信息追加到mycal中
echo 命令
基本语法
-
echo [选项] [输出内容](功能:echo输出内容到控制台)
应用案例
-
echo $PATH 输出当前环境变量的路径
-
echo "jujidi" 输入jujidi 文本
head 命令
基本语法
-
head 文件(功能:查看文件的头10行内容)
-
head -n 5 文件(功能:查看文件头5行内容)
应用案例
-
head -n 5 /etc/profile 显示profile文件的头5行
tail 命令
基本语法
-
tail 文件(功能:查看文件的后10行内容)
-
tail -n 5 文件(功能:查看文件后5行内容)
-
tail -f 文件(功能:时事跟踪文档的所有更新,工作中常用)
应用案例
-
tail -n 5 /etc/profile 显示profile文件的后5行
-
tail -f file.txt 用来时事监控文件file.txt,我们打开另一个终端偷偷的往file.txt追加东西时,时事监控就会立马看到变化。
ln 命令
基本语法
-
ln -s [原文件或目录] [软连接名](功能:给原文件创建一个软连接
-
相当于Windows下的快捷方式
应用案例
-
ln -s root toRoot 在home目录下创建一个软链接文件,指向root目录。使用 cd toRoot/ 命令时,其实是切换到root目录下。
-
rm -rf toRoot 删除软连接toRoot
history 命令
基本语法
-
history (功能:查看已经执行过的历史指令)
应用案例
-
history 显示所有的历史指令
-
history 10 显示10条最近的10条历史指令
-
!48 执行历史指令是编号是48的指令
date 指令
基本语法
-
date (功能:显示当前时间)
-
date +%Y (功能:显示当前年份)
-
date +%m (功能:显示当前月份)
-
date +%d (功能:显示当前是哪一天)
-
date "+%Y-%m-%d %H:%M:%S"(功能:显示年月日时分秒)
-
date -s 字符串时间 (功能:设置系统时间)
cal 命令
基本语法
-
cal [选项] (功能:不加选项,显示本月日历)
推荐阅读
1. 推荐一门付费的 Spring 视频课
2. MyBatis动态SQL
3. Spring 中的设计模式
4. Apache-Commons家族
本文分享自微信公众号 - Java后端(web_resource)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。