实践过的MacOS/Linus命令

最近使用Mac OS,发现用终端进行命令输入和文件查找等基本操作非常快捷方便,并且有时查看Unix服务器上的日志时,也常常需要用到这些命令,所以系统的学习了一下。

与其他Linux/Mac终端命令大全不同,这些全是我平时用到的时候边学习边进行的总结,参考一些前辈的文章,记录下自己想要的,写成了学习笔记,现在传上来,所以实践意义更大一些,仅供大家参考

 

参考文章:

https://blog.csdn.net/FungLeo/article/details/78488656

 

(以下列出的,全是常见命令,且在本机上实践过能使用,效果卓越)

 

 

1.    进入目录Cd

cd test

cd ../test

cd /Users/…… open . (一定是open空格,点) 就能打开指定位置的文件夹了

 

 2.    查看目录内容Ls

Ls –l 以列表形式查看文件

Ls –a 查看隐藏文件

Ls –la 查看隐藏文件,列表显示

Ls-t 按照修改时间来排序

 

ls       —列出目录内容(List directory contents

file     —确定文件类型(Determine file type

less   —浏览文件内容(View file contents

 

 

 3.    查看文件内的内容Less

less a.txt

 

 4.    查找 Find

find ./ -iname "*.txt"

   find  ~ -iname "1.jpg"

(貌似比起mdfind,find是在用户文件夹中进行搜索)

 

你也可以在特定的文件夹中寻找特定的文件:

find ~/Library/ -iname "com.apple.syncedpreferences.plist"
     

这个命令可以在Library文件夹中寻找com.apple.syncedpreferences.plist文件

 

5.    更高效的查找mdfind

mdfind –name a.txt

mdfind –name “Photo 1.PNG”

 

因为mdfind就是Spotlight功能的终端界面,你还可以使用mdfind寻找文件和文件夹的内容,比如寻找所有包含Will Pearson文字的文件:

mdfind "Will Pearson"
  

通过-onlyin参数,mdfind命令还可以搜索特定文件夹的内容,比如

mdfind -onlyin ~/Library plist
       

这条命令搜索Library文件夹中所有的plist文件

这个mac上特有的命令,当然其他的*nix也会有相类似的命令。它和find命令功能相同,但是它是使用Spotlight索引的。它可以让你在数秒内查询你的整个文件系统。你可以使用它来即时展示满足条件的新增文件的更新情况。我经常使用它来查询应用在隐蔽的位置存储的重要文件。

 

6.    创建文件目录mkdir

mkdir test

cd test

 

 7.    创建文件touch

touch 1.txt

touch 1.doc

多文件创建:

touch 1 2 3 4 (发现不给后缀的话,默认貌似是txt格式)

touch a.txt b.jpg c.doc d.pdf

 

 8.    另一种方式创建文件mkfile

使用方法:mkfile [-nv] size[b|k|m|g] filename ...

mkfile –n 1K 测试文件

mkfile –n 1K ~/test2/测试文件.txt

 

 9.    编辑文件内容Nano (Vim??)

nano test1/1.txt

写入内容等

Ctrl+X 保存并退出

 

 

 

 

 

 

10. 删除 rm

rm –f 文件

rmdir test

 

11. 重命名文件 mv

mv test test1 重命名test为 test1 (可用于文件、文件夹)

 

   当然,这本来就是移动文件,也就是剪切文件。我们可以这样操作

    mv ~/Downloads/love.txt ~/Documents/

 

12. 复制文件、文件夹

cp test1/1.txt test2/1copy.txt (复制文件)

 

   cp –r test1 test2 (如果你复制的不是文件,而是文件夹,则要加上一个递归的参数 -r)

   cp file1 file2 :把文件file1复制为file2

复制文件,保留所有权限、属性 –a

cp -a file1 file2

复制文件夹,保留所有权限、属性 –ra

cp -ra test1 test2

复制的文件夹里面有很多内容,想看到实时进度: -v 参数

cp -rav a b

 

如上命令,你就可以把 a 目录的所有内容原封不动的复制到 b 目录去,并且可以看到实时的复制过程。

---------------------

cp ~/Downloads/love.txt ~/Documents/

 13.  压缩Gzip

gzip test1/1.txt

gunzip test1/1.txt.gz

 

类似的有一个zip(没明白这个是做什么的)

 

当跨目录的时候是这么操作的

zip -q -r -e -m -o '\user\someone\someDir\someFile.zip' '\users\someDir'

 

14.  解压缩 Gunzip

gzip test1/1.txt

gunzip test1/1.txt.gz

 

 类似的有一个zip(没明白这个是做什么的)

 

 

 

 15. 打包解包 tar/untar

待研究

 

16.   查看文件前几行head

head -10 1.txt

 

查看文件内容的特殊方法:

最基本的cat和less,more,如果有特殊的要求:

1.只想看文件的前5行,可以使用head命令,如:head -5 /etc/passwd


2. 只想查看文件的后10行,可以使用tail命令,如:
tail -10 /etc/passwd
tail -f /var/log/messages


参数-f使tail不停地去读最新的内容,这样有实时监视的效果

 

17. tail 查看文件后几行

tail -f sys.log

tail -f 100 1.txt

tail –n 100 1.txt

tail 20 1.txt

tail详解见下

 

一、tail命令语法

tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ]
参数解释:
-f 该参数用于监视File文件增长。
-c Number 从 Number 字节位置读取指定文件
-n Number 从 Number 行位置读取指定文件。
-m Number 从 Number 多字节字符位置读取指定文件,比方你的文件假设包括中文字,假设指定-c参数,可能导致截断,但使用-m则会避免该问题。
-b Number 从 Number 表示的512字节块位置读取指定文件。
-k Number 从 Number 表示的1KB块位置读取指定文件。
File 指定操作的目标文件名称
上述命令中,都涉及到number,假设不指定,默认显示10行。Number前面可使用正负号,表示该偏移从顶部还是从尾部開始计算。
tail可运行文件一般在/usr/bin/以下。

 

二、tail命令使用方法演示例子

 

1、tail -f filename
说明:监视filename文件的尾部内容(默认10行,相当于增加参数 -n 10),刷新显示在屏幕上。退出,按下CTRL+C。

2、tail -n 20 filename
说明:显示filename最后20行。

3、tail -r -n 10 filename
说明:逆序显示filename最后10行。

补充:
跟tail功能相似的命令还有:
cat 从第一行開始显示档案内容。
tac 从最后一行開始显示档案内容。
more 分页显示档案内容。
less 与 more 相似,但支持向前翻页
head 仅仅显示前面几行
tail 仅仅显示后面几行
n 带行号显示档案内容
od 以二进制方式显示档案内容

 

 18. cat 查看文件整个的内容

cat 是一个文本文件查看和连接工具。查看一个文件的内容,用cat比较简单,就是cat 后面直接接文件名。

       cd test1

-------------------

cat > test.txt
然后输入文字。
最后 ctrl+D 退出。

若test.txt存在,修改文件;若test.txt不存在,新增文件

-------------------

       cat 1.txt a.txt>1.doc

       cat 1.doc

       >>sibianxiedianshenme

产生的效果:通过cat 把1.txt、a.txt两个文件连接在一起(也就是说把这两个文件的内容都接在一起)并输出到一个新的文件1.doc 中。

注意:其原理是把两个文件的内容连接起来,然后创建1.doc文件,并且把几个文件的内容同时写入1.doc中。特别值得一提的是,如果您输入到一个已经存在的1.doc 文件,会把1.doc内容清空。

 

cat详解可以参考 https://www.cnblogs.com/perfy/archive/2012/07/23/2605550.html

 

 

posted on 2018-11-13 15:00  喵の学习园  阅读(231)  评论(0编辑  收藏  举报

导航