Mac命令行工具及其问题收录

问题集

OSX使用oh-my-zsh后.bash_profile自定义失效

原因:oh-my-zsh的配置文件为.zshrc,而默认shell(bash)的配置文件为.bash_profile
解决:将.bash_profile的配置移到.zshrc中去。在.zshrc添加source ~/.bash_profile会产生打开终端初始化过久的问题。

使用brew安装命令行工具时,提示”Error: undefined method `sdk_path_if_needed’ for OS::Mac:Module”

原因:brew版本过老
解决:运行 brew update-reset 去更新brew

更新Cocoapods报错”Operation not permitted”

更新gem,sudo gem update –system
sudo gem install cocoapods
报错:Operation not permitted - /usr/bin/xcodeproj
解决:sudo gem install -n /usr/local/bin cocoapods

功能集

字符操作类

匹配字符

当前目录下 查找”hello,world!”字符串
grep -rn “hello,world!” *

*: 表示当前目录所有文件,也可以是某个文件名
-r 是递归查找
-n 是显示行号
-R 查找所有文件包含子目录
-i 忽略大小写

其它命令行参数:
grep -i pattern files :不区分大小写地搜索。默认情况区分大小写,
grep -l pattern files :只列出匹配的文件名,
grep -L pattern files :列出不匹配的文件名,
grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’),
grep -C number pattern files :匹配的上下文分别显示[number]行,
grep pattern1 | pattern2 files :显示匹配 pattern1 或 pattern2 的行,
grep pattern1 files | grep pattern2 :显示既匹配 pattern1 又匹配 pattern2 的行。

< 和 > 分别标注单词的开始与结尾:
grep man * 会匹配 ‘Batman’、‘manic’、‘man’等,
grep ‘<man’ * 匹配‘manic’和‘man’,但不是‘Batman’,
grep ‘<man>‘ 只匹配‘man’,而不是‘Batman’或‘manic’等其他的字符串。
‘^’:指匹配的字符串在行首,
‘$’:指匹配的字符串在行尾,

文件字符转码

iconv -f UTF8 -t GB18030 a.csv >b.csv

io类

给文档插入字符串

sed ‘1i 添加的内容’ file #在第一行前添加字符串(sed以行为单位操作)
sed ‘$i 添加的内容’ file #在最后一行行前添加字符串
sed ‘$a 添加的内容’ file #在最后一行行后添加字符串

文件操作类

查找文件

find /Applications/Xcode.app -name stdio.h
find / -name ‘xx*’

复制文件

cp -r src_dir des_dir #复制文件夹到另一文件夹内
cp -r src_dir/. des_dir #只复制文件夹内的文件到另一文件夹内

压解文件

unzip -o -d /home/sunny myfile.zip #-o:不提示的情况下覆盖文件 -d:将文件解压缩到指定目录
zip -d myfile.zip smart.txt # 删除压缩文件的文件
zip -m myfile.zip ./rpm_info.txt # 向压缩文件内添加文件
zip -r filename.zip filesdir

tar -czvf zip_file_path –exclude=*.git .

查看文件大小分布

du -sh *
du -d 1 h
(Xcode的缓存和各版本的iOS SDK占用量极大,会造成系统占用磁盘比例极高)
stat file_path

.sqlite3数据库查看

$ ss //打开数据库文件
sqlite>.help //帮助
sqlite>.quit //退出
sqlite>.tables //查所有表
sqlite>.show //查配置
sqlite>.mode list/line/column //设置查询结果排列格式
sqlite>.headers on //是否显示头
sqlite>select * from xx_table //查表语句执行

当然可以下载以下工具应用使用代替

  • Sqlite Database brower
  • Datum
  • Sqlite Professional mac

系统管理类

查进程

ps aux | xxinfo
ps -ef|grep uwsgi

根据占用端口杀进程

lsof -i:端口号
kill -9 PID

查看cpu和内存使用情况

top -u 用户名

关机

shutdown -h # 关闭计算机及电源
shutdown -r now # 重启
shutdown -h +1 “1 minute after shutdown” # 定时关机
shutdown -c # 取消关机

权限

  • d 代表目录
  • r 代表用户是否有读取权限
  • w 代表用户是否有写入权限
  • x 代表用户是否有执行权限
    • 代表此项为空,也就是没有此项权限的意思

drwxrwxrwx

位置 属性 含义
第1位 d 代表是否为文件夹
第2-4位 rwx 代表所属用户的读 写 执行权限
第5-7位 rwx 代表所属用户组的读 写 执行权限
第8-10位 rwx 代表其他用户的读 写 执行权限
chmod [选项] [权限操作] [文件名]

选项:

  • -R [递归到子文件及文件夹]

权限操作:(用户标识、操作符、值)

  • u [代表所属用户]

  • g [代表所属用户组]

  • o [代表其他用户]

  • a [代表以上所有三个]

    • [代表删除权限]
    • [代表增加权限]
  • = [代表将权限设置为]

  • rwx=7

  • -wx=3

  • r-x=5

  • rw-=6

软件类

vim

# 分屏
vim -on file1_path file2_path

执行Xcode功能(xcrun)

# 截图
xcrun simctl io booted screenshot /pictures/test.png
# 录屏
xcrun simctl io booted recordVideo /videos/test.mp4
# 查看已安装设备
xcrun simctl list
xcrun instruments -s
# 启动模拟器
(Xcode9以下)
xcrun simctl boot $UUID
xcrun instruments -w "iPhone 8(11.2)"
xcrun simctl boot "iPhone 8(11.2)"
(Xcode9或以上)
open -a 'Simulator' --args -CurrentDeviceUDID <device_udid_here>
# 关闭模拟器
xcrun simctl shutdown $UUID
# 重置模拟器
xcrun simctl erase $UUID
# 安装指定app
xcrun simctl install booted <app路径>
xcrun simctl install <device> <app路径> 
# 运行指定app
xcrun simctl launch booted <bundle identifier>
xcrun simctl launch <device> <bundle identifier>
# 关闭app
xcrun simctl terminate booted <bundle identifer>
xcrun simctl terminate <device> <bundle identifier>
# 卸载app
xcrun simctl uninstall booted <bundle identifer>
xcrun simctl uninstall <device> <bundle identifier>
# 模拟器与Mac之间复制粘贴
pbcopy
pbpaste
xcrun simctl pbcopy booted
xcrun simctl pbpaste booted
xcrun simctl pbsync sourceDevice destDevice
# 帮助
xcrun simctl -h

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 mingfungliu@gmail.com

文章标题:Mac命令行工具及其问题收录

文章字数:1.3k

本文作者:Mingfung

发布时间:2018-02-22, 17:10:00

最后更新:2021-11-05, 13:09:24

原始链接:http://blog.ifungfay.com/工具/Mac命令行工具及其问题收录/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏

宝贝回家