shell常用命令

shell常用命令

说明

编写环境:darwin(macOS, terminal), zsh

仅列出本人常用命令,详情请自行用man查看

持续更新(大概)

基本命令

man #查看指定指令的详细用法
man ls #查看指令ls的用法

sudo #在命令前加上,获取管理员权限

cd #进入指定路径
cd .. #进入上层路径
cd folder #进入当前路径下的folder文件夹

ls     #查看当前路径下的文件
ls dir #查看指定路径下的文件

pwd #输出当前路径

echo #输出字符串
echo "Hello, World!" #输出Hello, World!

> >> < #重定向
echo "Hello, world!" > file  #输出并覆盖文件file
echo "Hello, World!" >> file #输出到文件file末尾
program < file #将程序program的标准输入重定向到文件file

| #管道
program1 | program2 #将program1标准输出和program2的标准输入连接起来

文件和文件夹

#特殊文件(夹)
.  #当前文件夹
.. #上层文件夹
*  #通配符,指所有字符串(所有文件)

mkdir #创建文件夹
mkdir folder #创建名为folder的文件夹

touch #创建文件
touch file #创建名为file的文件

cp file1 file2 #复制文件file1为file2
mv file1 file2 #移动文件file1为file2(可以用来重命名)
paste file1 file2 ... > file3 #将file1,file2...逐行合并

diff file1 file2 #比较file1和file2的不同

ln -s dir dir_ln #给文件或文件夹dir创建链接(快捷方式)到dir_ln

vim #调用自带编辑器vim来编辑文件
vim file #编辑文件file
# vim中简单指令
# i 编辑模式
# esc 退出编辑模式
# :wq保存并退出

cat #从前往后查看文件
tac #从后往前查看文件
less #查看文件
more #查看文件

rm #删除文件
-r #删除文件夹及其内容
-f #强制删除
rm file #删除文件file
rm -rf folder #强制删除文件夹folder

搜索相关

find #查找文件
find file          #在当前目录下查找文件file,不进入子文件夹
find . -name file  #在当前目录下查找文件file,进入子文件夹
find . -iname file #在当前目录下查找文件file,进入子文件夹,且不区分大小写

grep #查找关键词(支持正则)
grep "Hello, world!" file1 file2 ... #在列举的文件中查找Hello, world!
#留坑

进程相关

ps #查看当前控制台所属用户的进程
-e #显示系统所有进程
-f #显示更多信息
ps -ef | grep "name" #查看进程名为name的进程信息

top #动态监视系统资源

kill pid #杀死指定pid的进程
killall name #杀死进程名为name的进程
pkill name   #杀死进程名为name的进程

权限相关

# 查看权限
ls -all

chmod #修改文件权限
chmod [ugoa] [+/-/=] [rwx] file #对file权限进行修改
# u:user,文件所有者 g:group,文件所属组 o:other其他人 a:所有人(默认)
# +:添加 -:删除 =:覆盖
# r:读 w:写 x:执行
chmod 777 file
# r:4 w:2 x:1 权限数字相加即可
# 三个数字分别设定user, group, other

chown, chgrp #修改文件所属用户或所属组
chown user file       #将文件file所有者变更为user
chown user:group file #将文件file所有者变更为user,所属组变更为group
chgrp group file      #将文件file所属组变更为group

远程相关

ssh username@host #通过ssh连接到远程服务器
scp file username@host:dir #将文件file上传到远程服务器的目录dir内

ssh-keygen -t [rsa/dsa] #生成rsa/dsa格式的ssh密钥
ssh-add dir/id_xxx        #将密钥dir/id_xxx添加到ssh-agent中
ssh-add -d dir/id_xxx.pub #将密钥dir/id_xxx从ssh-agent中删除
ssh-add -D #删除ssh-agent中所有密钥
ssh-add -l #查看ssh-agent中的密钥

软件相关

# homebrew(macOS)
# 安装
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# 使用
brew search name
brew install name
brew install name --cask
brew uninstall name

# git
git clone "xxx.git"
git push
git fetch
git pull
git remote
git remote add origin "xxx.git"
git remote set-url origin "xxx.git"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值