Mac常用(实用)命令行(后续继续补充)
1.文件(夹)显示与隐藏:
-
显示:
defaults write com.apple.finder AppleShowAllFiles -bool true
-
隐藏:
defaults write com.apple.finder AppleShowAllFiles -bool false
2.远程copy
scp ~/Downloads/ root@192.168.1.10:/目标路径文件 -a -r 文件夹
3.root权限不能修改/bin 解决办法
将Rootless修改成了,enable,所以我们需要关掉它, 重启电脑
按住 Command + R,进入到恢复界面
打开Terminal终端,然后输入
csrutil disable
如果想改回来,将disable改成enable即可
4.启动swift工具
xcrun launch-with-toolchain /Library/Developer/Toolchains/swift-latest.xctoolchain
$ export PATH=/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin:"${PATH}"
5.文件夹权限和软连接
1.如果没有发现需要的命令,可以用映射地址把安装路径弄到系统全局
sudo ln -s /usr/local/mysql/bin/mysql /usr/bin
2.更新pod仓库 pod repo update
3.权限修改
# linux 下执行.sh文件总是提示permission denied
# 如果你是root登陆的话(不是的话,切换到root用户,对*.sh赋可执行的权限)
# chmod 777 *.sh
# or
# chmod +x *.sh
chmod 777 -R ./Desktop (-R文件夹)
4.查看命令位置
which git ======/usr/local/bin/git
5 高级解释
sudo chmod 0755 /usr/local
sudo chgrp wheel /usr/local
我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。例如,如果想让某个文件的属主有"读/写"二种权限,需要把4(可读)+2(可写)=6(读/写).数字设定法的一般形式为:chmod [mode] 文件名?
6修改文件夹的用户组权限
chown -R www-data:www-data UserHeadImage
sudo chown root:wheel /usr/local
7.删除文件扩展@
find . -type f -name '*.png' -exec xattr -c {} \;
8.遇到没有根权限时
sudo chown -R $(whoami) /usr/local/var/homebrew
6.搜索文件(夹)
find ./ -name ‘fan*’
find ./ -iname ‘fan*’
mdfind -name 文件名
mdfind ‘fan’ 查询所有包含fan的文件
mdfind -onlyin ~/Library plist 这条命令可以搜索Library文件夹中所有plist文件。
# 找到全部不包含i开头的PNG图片,是图片的执行删除
# find . ! -name "i*.png" -name "422333323223*.png" -exec rm -rf {} \;
# for i in `find . -name "*.png"`
# do
# newname='echo $i|sed'
# # `mv $i $newname`
# pwd
# done
find . -name 'CVS' -exec rm -rf {} \;
7.查看文件夹大小的命令du -help
1.du -h -d=0 ./ 查看当前目录下深度为0,总大小
-h 是显示多少M,K,G
-d 是深度,默认是0
2.du -h -d ./* 查看当前文件目录下子文件或文件夹的大小
3.du -sh ./fan文件夹
8.修改安装应用权限(允许任何来源)
- 允许任何来源
sudo spctl --master-disable
- 单个软件
sudo xattr -d com.apple.quarantine /Applications/Sketch.app
- 关闭SIP系统保护方法
1. 查看当前SIP状态(终端命令下)
csrutil status
已打开:
System Integrity Protection status: enabled.
已关闭:
System Integrity Protection status: disabled
2. 关机,然后重新启动你的Mac电脑,在开机时一直按住Command+R迸入Recovery模式。
3. 进入Recovery模式后打开终端输入 "csrutil disable" 重启电脑就OK了
9.homeBrew命令(MacOS10.15以后不建议用了)
//homebrew官方github:https://github.com/Homebrew/homebrew/tree/master/share/doc/homebrew#readme
brew search formula # 搜索软件包
brew install formula # 安装软件包
brew remove formula # 移除软件包
brew cleanup formula # 清除旧包
brew list # 列出已安装的软件包
brew update # 更新 Homebrew
brew upgrade # 升级软件包
brew home formula # 用浏览器打开
brew info formula # 显示软件内容信息
brew deps formula # 显示包的依赖
brew server # 启动 web 服务器,可以通过浏览器访问http://localhost:4567 来通过网页来管理包
brew -h # 帮助
brew versions formula # 列出软件包的版本
10.gem命令
gem -v #gem版本
gem source #gem资源 https://gems.ruby-china.com/
gem sources -a url |gem sources -r url #gem添加或删除配置源
gem update #更新所有包加 sudo
gem update --system #更新RubyGems软件
gem install rake #安装rake,从本地或远程服务器
gem install rake --remote #安装rake,从远程服务器
gem install watir -v(或者--version) 1.6.2#指定安装版本
gem uninstall rake #卸载rake包
gem list d #列出本地以d打头的包
gem query -n ''[0-9]'' --local #查找本地含有数字的包
gem search log --both #从本地和远程服务器上查找含有log字符串的包
gem search log --remoter #只从远程服务器上查找含有log字符串的包
gem search -r log #只从远程服务器上查找含有log字符串的包
gem help #提醒式的帮助
gem help install #列出install命令 帮助
gem help examples #列出gem命令使用一些例子
gem build rake.gemspec #把rake.gemspec编译成rake.gem
gem check -v pkg/rake-0.4.0.gem #检测rake是否有效
gem cleanup #清除所有包旧版本,保留最新版本
gem contents rake #显示rake包中所包含的文件
gem dependency rails -v 0.10.1 #列出与rails相互依赖的包
gem environment #查看gem的环境
11.解决磁盘读取不出来
sudo kextunload /System/Library/Extensions/IOUSBMassStorageClass.kext
sudo kextload /System/Library/Extensions/IOUSBMassStorageClass.kext
12.查询程序占用进程
ps -aux|grep certbot
ps -ef | grep nginx
查看端口进程 sudo lsof -i:8095
杀死进程 sudo kill -9 7748
13.Android真机调试失败时
./adb kill-server
./adb start-server
14.iOS打包.a库和framework时支持bitcode
- 1.pod package来打包,修改podspec文件,添加xcconfig即可
s.xcconfig = {'BITCODE_GENERATION_MODE' => 'bitcode'}
- 2.xcodebuild来打包lib的话,可以在build setting的User-Define Setting中添加,这样在build的时候也会是-fembed-bitcode
'BITCODE_GENERATION_MODE' => 'bitcode'
- otool命令查看是否支持bitcode,如果输出不为0或者1的数字就行
//针对于静态链接库.a文档 (armv7 i386 x86_64 arm64)(注意空格)
otool -arch armv7 -l xxxx.a | grep __bitcode | wc -l
otool -arch i386 -l xxxx.a | grep __bitcode | wc -l
otool -arch x86_64 -l xxxx.a | grep __bitcode | wc -l
otool -arch arm64 -l xxxx.a | grep __bitcode | wc -l
//framework
otool -l xxxx | grep __LLVM | wc -l
otool -arch armv7 -l xxxx | grep __LLVM | wc -l
15.Python安装和卸载
安装来源 | python安装路径 | 安装方式 |
---|---|---|
系统默认 | /System/Library/Frameworks/Python.framework/Versions/2.7 | 不要覆盖,不要动 |
brew安装 | /usr/local/Cellar | brew install pyhton |
官网pkg安装 | /Library/Frameworks/Python.framework/Versions/3.8 | https://www.python.org/downloads/ |
Pyhton卸载方式
1.系统安装的不需要管,最好也不需要卸载和覆盖,以免出现问题,最好是安装双版本Python
2.还有一个xcode自带的Python也最好不需要动,不要改,安装在xcode.app内部
3.brew安装的 找到需要删除的显示原身移除就行
brew cleanup python3 只能卸载旧版本的,最新的卸载不掉
brew cleanup -n 查看可以删除的
特别注意brew有些安装的Python是其他大型项目,命令的依赖项,最好不要删除,如果不是自己主动安装的
4.官方pkg安装的卸载方法
ls /Library/Frameworks/Python.framework/Versions 查看当前安装的版本
结果打印 : 3.7 3.8
sudo rm -rf /Library/Frameworks/Python.framework/Versions/3.7 卸载框架
sudo rm -rf "/Applications/Python3.7" 卸载应用程序里面的
ls -l /usr/local/bin 查看所有软连接
ls -l /usr/local/bin | grep '/Library/Frameworks/Python.framework/Versions/3.7' 查看所有该路径的软连接移除就行
修改配置文件 ~/.base_profile
或者~/.zshrc
注意修改pyhton配置别名,有些安装的软件命令行找不到,都可以用这种方式添加别名下面是bash
#设置Python路径
PATH="/Library/Frameworks/Python.framework/Versions/3.8/bin:${PATH}"
export PATH
#设置好命令生效顺序
export PATH=/bin:/usr/bin:/usr/local/bin:$PATH
#设置快捷键(设置的别名,优先替换全局命令行的pyhton命令)
alias python="/Library/Frameworks/Python.framework/Versions/3.8/bin/python3.8"
16.找不到adb命令,其他命令类似
#如果命令行找不到adb命令,可以用两种方法设置
#1.切换到用户目录下
cd ~/
#不会vim命令或者不熟的可以直接用open命令 open+目录/文件
#例如:open ./.bash_profile 在文本编辑器编辑,可观性强
#2.如果用的是bash命令行
vi .bash_profile
#***是导入全局路径
export PATH=${PATH}:***/platform-tools
#设置adb别名,可以全局命令行调用 ***全路径
alias adb="***/platform-tools/adb"
#3.如果用的是zsh命令行
vi .zshrc
#***是导入全局路径
export PATH=$PATH:***/platform-tools
#设置adb 快捷键别名 ***全路径
alias adb=***/platform-tools/adb
网友评论