前言
作为一个程序员,平时肯定和文件打交道,如何操作文件呢?资深大佬一般都是直接操作指令,控制台或者终端执行命令操作,其实编程的大类可以分为2种,一种是指令式编程还有就是函数式编程,算法、数据结构和设计模式主导着编程界三分天下。作为一个移动端的开发者,对待Linux指令还有挺感兴趣的,后端开发者应该对Linux指令都比较熟系,这里呢就简单整理了一些指令,方便我们使用时查找。
ls系列,查看目录下文件信息
ls //list的缩写,查看当前目录下有什么文件
ls -l // 通过详细内容形式查看目录下的文件内容,展示读写权限,日期等信息
ls 目录 //查看指定目录下文件名字信息
ls -l 目录 //以详细列表形式查看指定目录下文件名字信息
ls -a //list all 查看全部文件,包括隐藏文件
ls -al list list all 以详细列表形式查看全部文件,包括隐藏文件
目录切换
cd 目录名字 //点击回车直接切换到目录
cd .. //向上一级目录切换
cd ~ //回到home根目录
查看当前操作文件的位置
pwd
目录操作
//创建目录 make directory
mkdir newdir //创建一个新目录
mkdir -p newdir/newdir //递归方式创建多级目录
//移动(改名字)目录(文件)都可操作 move
//dir1移动到dir2目录下,并给改名字为"原名":
mv dir1 dir2
//dir1移动到dir2目录下,并给改名字为newdir
mv dir1 dir2/newdir
//dir2移动到dir4目录下,并给改名字为"原名"
mv dir1/dir2 dir3/dir4
//dir2移动到dir4目录下,并给改名字为 newdir
mv dir1/dir2 dir3/dir4/newdir
//dir2移动到 当前 目录下,并给改名字为"原名"
mv dir1/dir2 ./
//dir2移动到 当前 目录下,并给改名字为newdir
mv dir1/dir2 ./newdir
//复制目录 copy
//file1被复制到dir1目录下一份,并给改名字为“原名”
cp file1 dir1
//file1被复制到dir1目录下一份,并给改名字为newfile
cp file1 dir1/newfile
//dir1被复制到dir2目录下一份,并给改名字为“原名”
cp -r dir1 dir2
//dir1被复制到dir2目录下一份,并给改名字为newdir
cp -r dir1 dir2/newdir
//dir3被复制到dir5目录下一份,并给改名字为"原名"
cp -r dir1/dir2/dir3 dir4/dir5
//删除操作 remove
//普通文件删除
rm filename
//删除目录[无视层次]需要-r参数
rm -r dir
//recursive force 递归强制删除文件
rm -rf 文件
//递归强制方式删除系统里边的全部内容(一般不要执行这个,后果是毁灭性的)
rm -rf /
rm -rf /*
文件操作
//1、查看文件内容
//在终端显示文件全部内容
cat filename
//通过"敲回车"方式从第一行逐行查看文件内容,不支持回看,q键 退出查看
more filename
//"上下左右"键方式查看文件各个部分内容,支持回看,q键 退出
less filename
//查看文件“前n行”内容
head -n filename
//查看文件“末尾n行”内容
tail -n filename
//计算文件行数
wc filename
2、创建文件 touch
touch filename
touch dir/filename
3、追加内容(文件不存在会“自动”创建)echo
//给文件“覆盖写”方式追加内容
echo 内容 > filename
//给文件纯追加内容
echo 内容 >> filename
补充(文件格式转换 textutil)
textutil 是macOS系统自带的,Windows不知道有没有,用于处理文稿的指令。其中,大家最常用的功能就是它的下属功能 convert ,这句指令允许我们将任何文件,在txt、html、rtf、rtfd、doc、docx、wordml、odt、webarchive这些文件格式中互相转换。
如果手头有一篇 DOCX 文件需要被转换成 TXT,就可以输入
textutil -convert 想转换的格式如txt 文件路径
就可以进行文件格式转换了。
小结
熟练掌握上面的指令,差不多可以对付平时需求了,后期再发现其他有趣的指令在补充,mac终端有个say命令,挺好玩。无善无恶心之体,有善有恶意之动 ,知善知恶是良知,为善去恶是格物。