We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
# 指令 选项 参数(1) 参数(2) command [-options] parameter1 parameter2 ... # [--options] 使用选项的完整全名,例如 --help;
man
man command # 搜寻特定指令/文件的man page说明文件 man -f command # 相当于 ==> whatis command # 按关键字搜索man page说明文件 man -k command # 相当于 ==> apropos command
环境变量 $PATH 默认是放置在 /usr/share/info/
/usr/share/info/
set 可以列出目前 bash 环境下的所有变量
set
按『tab键』:命令与文件补全功能
使用 history 查看执行过的历史指令,指令记录存放在 ~/.bash_history ,按『上下键』可以找到前/后一个输入的指令
history
~/.bash_history
命令别名设定: alias, unalias。例如 alias rm='rm -i'
alias
unalias
alias rm='rm -i'
路径与指令搜寻顺序:
login shell 会读取两个配置文件:
source
数据流重导向:
tee
# 将 stdout 与 stderr 分别存到不同的文件去 stdout > log.text 2> error.text # 将 stdout 与 stderr 都写入同一个文件 stdout > log.text 2>&1 # 要注意! tee 后接的文件会被覆盖,若加上 -a (append) 这个选项则能将讯息累加 ls -l / | tee -a ~/homefile | more
|
grep
cut
sort
wc
uniq
split
xargs
Linux下一切皆文件,我们一般会用扩展名来表示不同种类的文件。
下达 ls -al 命令看看文件属性(-a: 包括目录和以 . 开头的隐藏文件;-l: 显示详细列表)
ls -al
[root@serverxxx some-directory]# ls -la 总用量 8 drwxrwxr-x 7 user1 user1 132 12月 15 12:33 . drwx------ 3 user1 user1 127 12月 15 14:51 .. drwxrwxr-x 2 user1 user1 6 12月 15 12:21 .git -rw-rw-r-- 1 user1 user1 66 12月 15 12:21 .gitignore -rw-r--r-- 1 user1 user1 73 12月 15 12:21 README.md -rw-r--r-- 1 user1 user1 1964 12月 15 12:33 package.json drwxr-xr-x 8 user1 user1 256 12月 15 12:21 src -rw-r--r-- 1 user1 user1 377 12月 15 12:21 tsconfig.json
每一行都有 7 列,先认识一下上面7个字段个别的意思:
第一栏代表这个文件类型与权限,这一栏共 10 个字符:
第 1 个表示文件类型
接下来的字符中,以3个为一组(共三组),且均为 rwx 的三个参数的组合。其中,r 代表可读(read)、w 代表可写(write)、x 代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会用 - 代替占位。
rwx
Linux 是个多人多任务的系统,Linux 一般将文件可存取的身份分为三个类别,分别是 owner/group/others,且三种身份各有 read/write/execute 等权限
当创建一个用户的时候,Linux 会为该用户创建一个主目录,路径为 /home/[username],我们可以使用 cd ~,快捷进入当前用户 home 目录。如果你想放一个私密文件,就可以放在自己的主目录里,然后设置只能自己查看。
cd ~
每个用户都有一个用户组,方便多人操作的时候,为一群人分配权限。当创建用户的时候,会自动创建一个与它同名的用户组。
如果一个用户同时属于多个组,用户需要在用户组之间切换,才能具有其他用户组的权限。
既不是 Owner 又不属于 Group,就是其他人。
Root 用户是万能的天神,该用户可以访问所有文件
chgrp(change group) 群组名需要存在 /etc/group
# -R:递归更改文件属组 chgrp [-R] 群组名 文件或目录
chown(change owner) 用户账号名需要存在 /etc/passwd
# -R:递归更改文件属组 chown [-R] 账号名称 文件或目录 chown [-R] 账号名称:组名 文件或目录
Linux 文件的基本权限就有九个,分别是 owner/group/others 三种身份各有自己的 read/write/execute 权限,我们也可以用数字表示权限,数字与字母的对应关系为:
每组 rwx 权限用数字累加表示,例如 rwxrwxr-x 对应的数字则是: owner = rwx = 4+2+1 = 7 group = r-x = 4+0+1 = 5 others= - -x = 0+0+1 = 1
# 数字类型改变文件权限 # xyz 为 rwx 属性数值的相加值,例如上面 chmod 751 filename chmod [-R] xyz 文件或目录
还有一种就是用字符改变权限的方法,我们用 u(user,也就是owner), g(group), o(others) 来代表三种身份的权限,a(all) 代表全部身份
# 字符类型改变文件权限 # 设置 u(owner)具有rwx权限,go(group&others)具有rx权限 chmod u=rwx,go=rx text.txt # u(owner) 加上 x 权限,g(group)和 o(others)除去 x 权限。 chmod u+x,g-x,o-x index.html
ssh [options] [-p PORT] [username@]hostname # 例 ssh -p 3000 root@100.100.100.100
[root@my-azure]$ pwd /home/root/
cd /home/workspace # 进入/home/workspace cd ~ # 进入home目录 cd - # 回到上次所在目录,一般来回切换
mkdir folder-name # 创建目录 mkdir -p folder1/folder2/folder3 # 递归创建目录
touch new-file # 创建文件
echo "hello world" # 将打印内容通过 > 输出到 a.txt 文件,追加使用 >> echo "some content" > a.txt
cat ~/.ssh/id_rsa.pub # 如果文件内容太多,可以使用可翻页查看命令 more|less less /etc/man_db.conf # 如果只想查看部分内容,可以使用撷取命令 head|tail tail -n 10 -f /tomcat/log/messages # -n 10 显示10行,-f 监听文件修改实时显示
cp source_file_name target_file_name cp -r app /home/www/app # -r 复制目录
mv workspace/project/index.html /home/www/app # 移动 mv index.html home.html # 更改文件名
rm package.lock mv -rf dist # 直接删除整个目录
下面是常用的压缩命令,tar 是打包命令
我们以使用度最广的压缩指令gzip 为例
# 压缩 tar -zcvf xxx.tar.gz 要被压缩的文件或目录 # 解压 tar -zxvf xxx.tar.gz
which node # /root/.nvm/versions/node/v14.17.6/bin/node # 如果需要查询系统文件(/bin/sbin、/usr/share/man)可以使用 whereis whereis nginx
The text was updated successfully, but these errors were encountered:
No branches or pull requests
认识 BASH 这个shell
man
查看 command 的使用说明书(manual pages),通常从 /usr/share/man 读取环境变量 $PATH 默认是放置在
/usr/share/info/
set
可以列出目前 bash 环境下的所有变量按『tab键』:命令与文件补全功能
使用
history
查看执行过的历史指令,指令记录存放在~/.bash_history
,按『上下键』可以找到前/后一个输入的指令命令别名设定:
alias
,unalias
。例如alias rm='rm -i'
路径与指令搜寻顺序:
login shell 会读取两个配置文件:
然后会通过这2个文件脚本载入其他文件配置。
source
(或小数点) 将配置文件的内容读进来目前的 shell 环境中(更改配置文件后不需要注销立即生效)数据流重导向:
双向重导向
tee
会同时将数据流分送到文件去与屏幕|
仅会处理 standard output,在每个管线后面接的第一个数据必定是『指令』,而且这个指令必须要能够接受 standard input 的数据。常用管线处理命令grep
、cut
、sort
、wc
、uniq
、split
、xargs
Linux 文件权限属性
Linux下一切皆文件,我们一般会用扩展名来表示不同种类的文件。
下达
ls -al
命令看看文件属性(-a: 包括目录和以 . 开头的隐藏文件;-l: 显示详细列表)每一行都有 7 列,先认识一下上面7个字段个别的意思:
第一栏代表这个文件类型与权限,这一栏共 10 个字符:
第 1 个表示文件类型
接下来的字符中,以3个为一组(共三组),且均为
rwx
的三个参数的组合。其中,r 代表可读(read)、w 代表可写(write)、x 代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会用 - 代替占位。Linux 是个多人多任务的系统,Linux 一般将文件可存取的身份分为三个类别,分别是 owner/group/others,且三种身份各有 read/write/execute 等权限
文件所有者(Owner)
当创建一个用户的时候,Linux 会为该用户创建一个主目录,路径为 /home/[username],我们可以使用
cd ~
,快捷进入当前用户 home 目录。如果你想放一个私密文件,就可以放在自己的主目录里,然后设置只能自己查看。群组(Group)
每个用户都有一个用户组,方便多人操作的时候,为一群人分配权限。当创建用户的时候,会自动创建一个与它同名的用户组。
如果一个用户同时属于多个组,用户需要在用户组之间切换,才能具有其他用户组的权限。
其他人(Others)
既不是 Owner 又不属于 Group,就是其他人。
超级用户(Root)
Root 用户是万能的天神,该用户可以访问所有文件
chgrp:改变文件所属群组
chgrp(change group) 群组名需要存在 /etc/group
# -R:递归更改文件属组 chgrp [-R] 群组名 文件或目录
chown:改变文件拥有者
chown(change owner) 用户账号名需要存在 /etc/passwd
# -R:递归更改文件属组 chown [-R] 账号名称 文件或目录 chown [-R] 账号名称:组名 文件或目录
chmod:改变文件的权限
Linux 文件的基本权限就有九个,分别是 owner/group/others 三种身份各有自己的 read/write/execute 权限,我们也可以用数字表示权限,数字与字母的对应关系为:
每组 rwx 权限用数字累加表示,例如 rwxrwxr-x 对应的数字则是:
owner = rwx = 4+2+1 = 7
group = r-x = 4+0+1 = 5
others= - -x = 0+0+1 = 1
还有一种就是用字符改变权限的方法,我们用 u(user,也就是owner), g(group), o(others) 来代表三种身份的权限,a(all) 代表全部身份
Linux 常用命令
1. ssh 远程连接
ssh [options] [-p PORT] [username@]hostname # 例 ssh -p 3000 root@100.100.100.100
2. pwd 显示当前目录
[root@my-azure]$ pwd /home/root/
3. cd 切换工作目录
4. mkdir 创建目录
5. touch 创建文件
touch new-file # 创建文件
6. echo 打印输出
7. cat 查阅一个文件的内容
8. cp 复制文件或目录
cp source_file_name target_file_name cp -r app /home/www/app # -r 复制目录
9. mv 移动并重命名
10. rm 删除一个文件或者目录
rm package.lock mv -rf dist # 直接删除整个目录
11. tar 文件的压缩打包
下面是常用的压缩命令,tar 是打包命令
我们以使用度最广的压缩指令gzip 为例
12. which 查看指令对应的文件位置
The text was updated successfully, but these errors were encountered: