Linux入门笔记
设置
中文设置
#vim修改这个文件,该文件相当于系统配置文件
vim ~/.bashrc
#文件末尾插入如下代码,保存退出
#language
LANG=zh_CN.UTF-8
LANGUAGE=zh_CN.UTF-8
#运行修改后的配置文件
source ~/.bashrc
Linux命令
command [-options] [parameter]
- options可选选项,控制命令的行为细节
- parameter可选参数,控制命令的指向目标
ls命令
ls [-a -l -h] [Linux路径]
在命令行中,以平铺的形式,展示当前工作目录(默认HOME目录)下的内容
- -a选项展示全部内容,会展示出隐藏文件(文件前面带.)
- -l选项,以列表的形式展示内容,并展示更多细节
- -h选项,需要和-l一起使用,以更人性化的方式展示文件大小的单位
- 命令选项可以组合使用ls -alh 等同于ls -a -l -h
cd(change Directory目录)命令
cd [Linux路径] 切换路径
- cd命令无需选项,只有参数,表示切换目录到参数路径
- cd命令直接执行,表示切换到HOME目录
pwd(Print Work Directory)命令
无需参数和选项,直接执行
查看当前所在工作目录
相对和绝对路径
-
相对路径以当前目录作为起点
-
绝对路径以根目录作为起点(以/开头)
-
**. ** 表示当前目录 cd.
-
.. 表示上一级目录 cd.. cd../..
-
**~ ** 表示HOME目录 cd~
mkdir(MaKe Directory)命令
mkdir [-p] Linux路径 创建文件夹
-
-p 自动创建不存在的父文件(可以同时创建多层文件夹 mkdir -p /1/2/3)
-
参数必填,相对和绝对路径均可以
-
创建文件出了需要修改权限,HOME外无法成功
touch、cat、more命令
touch Linux路径 创建文件
tou命令无选项,参数必填
cat Linux路径 查看文件,直接展示所有内容
more Linux路径 查看文件,分页展示内容
more命令后按空格翻页,按Q退出
eg. cat /etc/services more /etc/services 可查看区别
cp(copy) 命令
cp [-r] 参数1,参数2 复制文件/文件夹
- -r选项,用于复制文件夹时使用,表示递归
- 参数1,Linux路径,表示被复制的文件和文件夹
- 参数2,Linux路径,表示要复制去的地方
mv(MoVe)命令
mv 参数1,参数2 移动文件或文件夹
- 参数1,Linux路径,表示被移动的文件和文件夹
- 参数2,Linux路径,表示要移动的文件或文件夹
- 如果参数2 不存在,则会将参数1改名为参数2
rm(ReMove)命令
rm [-r -f] 参数1,参数2……参数n 删除文件或文件夹
- -r 选项,用于删除文件夹
- -f 强制删除,不弹提示(用于root用户)
- 参数表示Linux路径,可删除多个,参数间用空格隔开
- 支持通配符的使用 rm -rf /*
which find 命令
which 要查找的命令 查找Linux命令
无需选项要查找哪个命令就写哪个 which cd
find 起始路径 -name "被查找文件名" 按文件名查找
- 可以使用通配符
- eg. find / -name "*test*" 查找/ 目录下文件名含test的文件
find 起始路径 -size +/- n[KMG] 按文件大小查找
- +代表大于 -代表小于
- eg. find / -size +100M 查找/目录下文件大小大于100M的文件
grep命令
grep [-n] 关键字 文件路径 关键字过滤
- -n选项 显示匹配的行和行号
- 参数关键字 表示需要过滤的关键字 建议用“ ”引起来
- 参数文件路径 表示被过滤的文件,可以作为管道符输入
wc命令
wc [-w -c -m -l] 文件路径 统计文件的单词数、字节数、字符数、行数
- -c 字节数 -m字符数 -l 行数 -w单词数
- 不带选项默认 -l -w -c
- 参数,被统计文件的路径,可以作为管道符输入
管道符
将左边的结果作为右边的输入
eg. cat test.txt |grep "hello" |wc -l (test.txt 文件里带hello 的行数) ls -l /home | wc -l (统计home下的文件数)
echo命令 `反引号
echo 输出的内容(建议使用” “引起来) 在命令行中输出指定内容
包围的会被当做命令执行 echo pwd(命令行中显示pwd) echo 'pwd' (命令行中显示pwd 命令执行后的内容)
tail命令 > 、>>覆写、追加写符
tail [-f -num] 文件路径 显示文件最后几行的内容
- -f 持续追踪最新内容
- -num 具体显示最后几行 不写默认10行
> 覆盖写 >>追加写 ls / > work.txt 将/目录下的东西覆盖写入work.txt
su和exit命令
su[-][用户名] 切换用户
- -符号是可选的,表示加载环境变量
- 用户省略默认切至root
- 普通用户切管理员需要密码,管理员随便切
- 切换用户后通过exit切换回上一个用户
sudo命令
sudo 命令 以管理员身份运行代码
-
普通用户使用需要root用户授权
- 切换到root 执行 visudo系统会自动打开/etc/sudoers 在末尾加上 用户名 ALL=(ALL) NOPASSWD =(ALL) 执行sudo不需要填写密码
-
root用户执行visudo命令,增加配置项给普通用户sudo权限
用户组管理命令
- groupadd添加组、groupdel删除组
- useradd添加用户、userdel删除用户
- usermod修改用户组、id命令查看用户信息
- getent passwd 产看系统全部用户信息
- getent group 查看系统全部组信息
查看权限控制
Linux权限类型 r w x 读 写 执行
文件夹的 x 为是否有cd权限
文件类型 | 所属用户权限 | 所属用户组权限 | 其它用户权限 |
---|---|---|---|
- d l | wxr | wxr | wxr |
-是文件 d是文件夹 l是软连接
修改权限命令
chmod [-R] 权限 文件或文件夹 修改文件或文件夹权限
-
-R对文件夹里的内容进行相同修改
-
eg. chmod u=wrx g=wx o=w hello.txt
-
u表示user g表示group o便是other
-
上面语句代表,对于hello.txt的权限修改为所属用户wrx,所属组wx,其它用户w
-
权限还可以通过3位数表示(r记为4、w记为2,x记为1)421二进制
0 1 2 3 4 5 6 7 --- --x -w- -wx r-- r-x rw- rwx 则 chmod u=wrx g=wx r=w hello.txt 可简写为 chmod 732 hello.txt
-
chown [-R] 用户[:] [用户组] 文件或文件夹 修改文件或文件夹所属用户或组
-
只可以root执行
-
-R对文件夹里的内容进行相同修改
-
:为分隔用户和用户组,前面为用户后面为组
命令 含义 chmod root 1.txt 将1.txt的所属用户更改为root chmod :root 1.txt 将1.txt的所属用户组更改为root chmod root:root 1.txt 将1.txt所属的用户和用户组更改为root chmod -R root:root 1 将文件夹1所有内容的所属用户和用户组更改为root
Linux 快捷键
命令 | 作用 |
---|---|
ctrl+c | 强制停止 |
ctrl+d | 退出或登出 |
history | 历史命令 |
!命令前缀 | 自动执行上一次匹配前缀的命令 |
ctrl+r | 历史命令搜索 |
ctrl+a | 跳到命令开头 |
ctrl+e | 跳到命令结尾 |
ctrl+键盘左键/键盘右键 | 向左/右跳一个单词 |
ctrl+l / clear | 清屏 |
软件安装与启动
- centos (.rpm)
yum [-y] [install remove search] 软件名称
- ubuntu(.deb)
apt [-y] [install remove search] 软件名称
-
systemctl命令
systemctl start | stop |status |enable |disable 应用名称
控制软件(服务)的启动、关闭、开机自启动
- start 启动 stop停止 status查看 enable开机自启 disable 开机不自启
- 系统内置服务均可以被systemctl控制
- 第三方软件如果自动注册了服务可以被systemctl控制
- 如果没自动注册服务可以手动注册
ln命令创建软链接
- 将文件或者文件夹链接到其它位置,类似于windows中的快捷方式
- ln -s 参数1 参数2
- -s 创建软链接的选项
- 参数1:被链接的文件或文件夹(写绝对路径,相对路径会报红)
- 参数2:要链接去的目的地
- eg.
- ln -s /etc/yum yum
- ln -s /etc/yum.conf yum.conf
时间日期
-
date [-d] [+格式化字符串格式] 查看系统时间
-
-d 按照给定的字符串显示日期,一般用于日期的计算
-
格式化字符串:通过 特定的字符串标记,显示日期的格式
-
字符串 | 含义 |
---|---|
%Y | 年 |
%y | 年份后两位数字 |
%m | 月份 |
%d | 日 |
%H | 小时 |
%M | 分钟 |
%S | 秒 |
%s | 自1970-01-01 00:00:00 UTC到现在的秒数 |
-
eg.
-
date -d "+1 year" "+%Y-%m-%d %H:%M:%S"
显示一年后的 年-月-日 时:分:秒
-
支持时间标记(-d) 的操作数 year month day hour minute second
-
-
时间校准
-
自动使用ntp(开机自启即可)
-
ntpdate -u ntp.aliyun.com (ntp服务器)#ntp手动校对时间
-
-
手动修改时区
-
rm -f /etc/localtime sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #将上海软链接到localtime
-