跳至主要內容

Linux常用命令

JI,XIAOYONG...大约 6 分钟linux

复制,删除,移动

cp拷贝,rm删除,mv移动。

-r表示递归 -f强制,无提示

cp [-r] fromFilePath toFilePath
rm [-r] fromFilePath toFilePath
mv [-r] fromFilePath toFilePath

切换目录

cd - 返回上次所在目录
cd ~ 切换到当前用户home路径下
cd . 当前路径
cd .. 上层路径
cd ../linux 切换到同一级的linux目录

新建文件、文件夹

mkdir dirName 创建文件夹
touch fileName 创建文件

Linux 文件和目录名字除了“/”都合法,但是尽量不要用正则表达式之类的符号,因为有可能会在进行正则匹配时造成误删等问题

假设当前目录有文件f1,f2,f3f[123]
执行:rm f[123]本来是希望删除f[123],但是由于正则匹配,会先删除f1,f2,f3这三个文件。

查看文件信息

file fileName 查看文件格式信息
cat fileName 以文本格式查看文件全部内容
less fileName 以分页形式查看文件内容,Q键退出

常用目录

/home 当前用户主目录,root用户为/root
/bin、/usr/bin 常用的可执行文件,root用户为/sbin
/media、/mnt 用户硬件挂载点
/etc 系统的配置文件,所有用户可见,root用户可以更改
/boot 系统内核,开机必备文件
/dev 系统的所有设备文件,如硬盘、光驱等
/var和/srv 系统运行时的用户数据
/proc 内存中的状态信息
/lib、/usr/lib、/usr/local/lib 库文件
/temp 临时文件,所有用户可见
/usr 程序相关文件unix system resource

文件相关

ls

ls 展示当前目录下文件信息:

ls [-alhd] l

l展示目录下的文件列表,a 展示所有文件(包括隐藏文件), h 展示带单位的文件大小, d展示当前目录本身信息

chmod

chmod 更改权限

chmod [-R] mode fileName

mode组成如下:[范围] [操作] [权限]

范围u用户、g群组、o其他、a以上所有(ugo)

操作+ 增加、- 减去、= 等于

权限r 读权限4 w 写权限2x 执行权限1 、无权限 0

权限验证 : root 用户可以访问任何用户文件,不受权限限制;普通用户需要验证权限

要读取文件夹中的内容,也需要执行权限x

文件权限与 umask

Linux 创建新项目时默认的权限分别是:

文件夹 777
文件 666

但是,经过 umask(此处为 0022)遮盖后,变成了 755 ,644,这才是真正创建后的结果

可以通过umask查看umask 的值,一般只去其后 3 位,遮盖的原则是从原先的权限中减去umask 中的权限:

原始权限  : r w x      7
umask	: -  w x      3
结   果  : r - -      4

查看、管理当前用户信息

userswhoami输出当前用户名

增、删、改用户:

useradd / userdel / usermod username
group群组管理也类似
groupadd / groupmod ...

其中userdel -r username在删除用户时,也会删除用户对应的主目录home

groups 查看用户所在群组,其中第一个是主要群组,其余是次要群组。

主要群组 在用户创建新的文件时,文件群组权限一项默认为该群组

whow可以查看用户相关信息

id 查看某人或者自己相关的UID、GID

finger [-s] username
查看用户相关信息
-s 仅显示用户账号、全名、登录时间

GID 系统 <500 ,用户 >500

改密码

passwd username

文件打包、压缩和解压缩

.gz 压缩后格式,.tar 打包后格式,tar.gz先打包后压缩的格式(常用)

gzip

gzip 压缩会删除源文件,

gzip [-cdtv#] filename

# 压缩等级

v 显示压缩前后压缩比

t 校验是否是 gzip 压缩的文件

c 压缩文件并输出到屏幕

d 解压文件

使用:

gizp file 将file压缩成file.gz,会删除file
gzip -c file > file.gz 压缩文件file并输出到file.gz

tar

打包,在压缩文件夹时,一般为了效率都会先打包,在压缩,由此形成的格式一般是类似*.tar.gz*的后缀。

打包
tar [-jcv] -f outFileName.tar inDirPath
解包
tar [-jxv] -f inFileName.tar -C outputPath

c 建立打包文档

x 解包 -C 输出目录

t 查看打包文件的内容

j / z 使用bz2 / gzip 压缩、解压

v 输出信息

f 后面紧跟要操作的文件

bash shell

bash 是用户和内容交互的桥梁 用户 ↔ bash ↔ Unix内核

env 查看环境变量

type 查看类型

which 查看指令的位置

clearcls 清屏

bash shell 设置

自定义变量

key=value 增加一个值为value的变量key

其中,如果 value 有空格的话需要用引号包住:

双引号 可以用$KEY 引用其他KEY的值
单引号 内容是纯文本

echo $KEY​ 可以输出KEY的值

set 查看所有变量

set | grep HIST 查看shell命令历史
set | grep PSI 提示符前面的内容,username-MBP:dirpath username$

别名配置

alias 查看所有别名

alias newCmd=oldCmd使用newCmd表示oldCmd

unalias newCmd 删除别名

如:alias cls=clear,执行cls就等于执行clear

环境变量

export KEY=VALUE 将值为VALUEKEY添加到环境变量(本次 shell 有效)

此外还可以写到一些文件中,在开机、登录、注销登录时调用执行——自动执行脚本**shell startup scripts**

shell startup scripts

开机时执行:

  • /etc/profile

  • /ect/profile.d/*.sh

  • ~/.bash_profile , ~/.bash_login , ~/.profile这三个只要其中一个成功执行了,后面的就不会执行,~/.bash_profile会执行~/.bashrc

  • /etc/.bashrc

未登录时会执行:

  • ~/.bashrc
  • /etc/bashrc
  • /etc/profile.d/*.sh

注销时执行~/bash_logout

在修改了以上文件后,可以使用source path_to_file或者重新登录使其立即生效

标准输入输出等

代码编号名称代码作用对象
0标准输入stdin键盘等
1标准输出stdout屏幕等
2标准错误stderr屏幕等

定向

  • <<< 输入和 追加输入
  • >>> 输出 和追加输出

使用:ls -al | >> result.txtls的内容追加输出到result.txt文件中。

|叫做管道,可以将前者的标准输出当做后者的输入。

cmd0 && cmd1 前者执行成功才会执行后者;

cmd0 || cmd1 前者执行失败才会执行后者。

grep

查询内容

grep [-cinv] 'key' filename

c 计算次数

i 忽略大小写

n 行号

v 显示没有该字符的行号

'key' 可以是正则表达式

--color=auto 对查找到的文本显示颜色

sort

排序,默认以第一列排序

sort [-fbknrtu] filename

f 忽略大小写

b忽略最前面的空格(要是排序不生效时可以试一下,推荐)

k 以第几列为标准排序,默认第一列

n 以数组排序

r 逆序

t 待排序的文件的分隔符,默认是 tab

M 以英文月份排序

wc

统计字符数

wc [lwm] filename

l

w

m 字符

文章标题:《Linux常用命令》
本文作者: JI,XIAOYONG
发布时间: 2019/01/14 20:16:53 UTC+8
更新时间: 2023/12/30 16:17:02 UTC+8
written by human, not by AI
本文地址: https://jixiaoyong.github.io/blog/posts/d0edc1ed.html
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 许可协议。转载请注明出处!
你认为这篇文章怎么样?
  • 0
  • 0
  • 0
  • 0
  • 0
  • 0
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.8