[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f3jBhWs6X6easoWlQ3HkpFYUyvTF6W-wFFv6RuRxQqyA":3},{"code":4,"message":5,"data":6},200,"成功",{"id":7,"createdAt":8,"title":9,"content":10,"summary":11,"image":12,"uid":13,"user":14,"categoryId":21,"category":22,"subCategoryId":24,"subCategory":25,"comments":27,"status":17,"reason":12,"notice":12,"visitCount":28,"commentCount":29,"keywords":30},94,"2024-03-06T16:37:23.852Z","一些在Mac电脑上常用的终端命令或Linux命令","# Mac上常见的操作命令\n**前言**\n这篇文章介绍在Mac电脑上常用的一些终端命令或者Linux命令，比如mkdir创建文件/文件夹、mv移动文件/文件夹、cp拷贝文件/文件夹，包括scp远程拷贝文件/文件夹的一些命令。作为参考手册。\n\n1. 查看当前终端所在的路径\n```\npwd\n```\n\n2. 显示当前路径下的文件\n```\nls // 查看非隐藏的所有文件/文件夹\nls -a // 查看所有文件/文件夹（隐藏的文件也可以查看）\nll // 查看文件/文件夹的详细信息（读写权限、创建日期等）\n```\n\n3. 创建文件\n```\ntouch test.txt\n```\n\n4. 进入编辑文件\n```\nvi test.txt\n// 或者\nvim test.txt\n```\n进入终端编辑文件之后，通常按i键进入编辑模式，当编辑文件结束后，按ESC键退出编辑模式，然后点击：，输入wq进行保存退出。如果遇到保存退出失败的情况，需要在wq后面加!号，再enter键确认退出\n\n5. 查看文件内容（同样适合查看一些密钥证书的内容，比如rsa的公钥文件内容）\n```\ncat test.txt\n```\n\n6. 以文本方式查看文件\n```\nopen -e test.txt\n```\n\n7. 创建文件夹\n```\nmkdir myProject\n```\n\n8. 进入某一个子文件夹内部\n```\ncd myProject\n```\n\n9. 返回当前文件夹的上一层\n```\ncd ..\n```\n\n10. 移动文件或文件夹\n将一个文件/文件夹，从一个路径移到另一个路径下\n```\nmv test.txt myProject/test.txt\n```\n\n11. 移动文件并改名\n```\nmv test.txt myProject/newTest.txt\n```\n\n12. 拷贝文件/文件夹到另一个文件夹下（或者在新路径下生成新文件夹）\n```\ncp -R myProject /Users/xxx/Desktop/myProject\n```\n这种方式是直接将myProject文件夹(包括其中的文件)，整个文件夹拷贝到Desktop下，当然可以改新文件夹的名字\n\n13. 拷贝文件夹内的所有文件（不包括文件夹）到新文件夹下\n```\ncp -R myProject/* /Users/xxx/Desktop/newProject/\n```\n\n14. 远程拷贝文件或文件夹\n需要使用scp命令，scp 使用同 ssh 一样的底层协议。\n```\nscp -E myProject/test.txt username@remoteserver.com:/Users/username/root/test.txt\n```\n-E 表示保留扩展属性等信息。\n\n15. 远程拷贝文件夹内所有文件（不包括文件夹）\n```\nscp -r myProject/* username@remoteserver.com:/Users/username/root/\n```\n\n还可以使用-q参数，表示不输出拷贝进度的信息\n还可以使用-i参数，指定密钥验证文件（可以避免手动输入密码）\n这里的详细解释可以参考我之前的文章：[远程ssh到服务器，以及本地电脑和服务端之间的文件传输scp相关操作](https://www.xinwei.ltd/article/93)\n\n16. mac上可以使用Homebrew来管理一些常见的第三方软件，比如mysql、postgresql、redis、php、python、watchman、nginx等。\n如果你想安装某一个第三方的软件包，可以尝试搜索\n```\nbrew search nginx\n```\n\n17. 使用brew安装第三方软件包\n```\nbrew install nginx\n```\n\n18. 查看当前终端中使用过哪些历史命令\n```\nhistory\n```\n\n19. 使用grep模糊查找之前使用的历史命令\n```\n history | grep npm\n```\n\n20. 安装iOS的cocoadpods是需要使用gem安装的\n```\ngem install cocoapods\n```\n\n21. 删除文件/文件夹\n```\nrm -rf test.txt\n```\n\n22. 执行某个bash脚本\n```\n./test.sh // 会被脚本中的路径变化影响\nbash test.sh // 不会更改脚本执行完后的路径\n```\n\n目前先总结这些吧，还有很多其他命令，比如在安装node之后会有npm全局命令，当然这些都是环境变量配置（手动/安装包自动）之后可以使用的命令。\n\n\n","这篇文章介绍在Mac电脑上常用的一些终端命令或者Linux命令，比如mkdir创建文件/文件夹、mv移动文件/文件夹、cp拷贝文件/文件夹，包括scp远程拷贝文件/文件夹的一些命令。作为参考手册。","",499668042977349,{"phone":15,"userId":13,"nickName":16,"vipType":17,"avatar":18,"sign":19,"createdAt":20},"13121171998","全栈老韩",1,"https://image.xinwei.ltd/images/IMG_5430.JPG","全栈工程师，擅长iOS App开发、前端（vue、react、nuxt、小程序&Taro）开发、Flutter、React Native、后端（midwayjs、golang、express、koa）开发、docker容器、seo优化等。","2024-01-01T16:14:30.305Z",2,{"id":21,"name":23},"IT技术",18,{"id":24,"name":26,"parentId":21},"Linux",[],930,0,"mac commands,mac terminal,mac命令,terminal命令"]