Linux
| 命令 | 功能 |
|---|---|
| pwd | 显示当前所在目录 |
| cd | 切换目录 |
| ls | 列出目录内容 |
| cat | 查看文件内容 |
| hostname | 显示主机名 |
| ifconfig/ip a | 查看网路配置 |
中的内容为可选
{ }中的内容为必选
文件头以-开头的文件怎么打开?
在其前面加./,文件打开命令:cat ./-
文件名带空格的文件应该怎么打开?
- 将文件名用双引号括起来
- 使用反斜杠键转义每个空格
对应命令1:cat "spcaes in this filename"
对应命令2:cat spaces\ in\ this\ filename
如何找到隐藏文件?
ls找不到,ll可以展示所有文件信息,ls -al也可以展示所有文件信息(包括隐藏文件),ls -a也可以
ls -l #以长格式显示当前目录中的文件和目录
ls -a #显示当前目录中的所有文件和目录,包括隐藏文件
ls -lh #以人类可读的方式显示当前目录中的文件和目录大小
ls -t #按照修改时间排序显示当前目录中的文件和目录
ls -R #递归显示当前目录中的所有文件和子目录
ls -l /etc/passwd #显示etc/passwd文件的详细信息
Linux有哪些文件类型?
Linux中的普通文件类型包括:
- 纯文本文件(ASCII)
- 二进制文件(binary)
- 数据格式的文件(data)
- 各种压缩文件.第一个属性为-
file命令
人类可读的文件只有纯文本文件
用 file批量判断文件类型:file ./*
如何盲目寻找指定文件?
find命令
格式:find [路径] [匹配条件] [动作]
-type type:按文件类型查找可以是r(普通文件)、d(目录)、l(符号链接)等
-size [+-]size[cwbkMG]:按文件大小查找,支持使用+或-表示大于或小于指定大小,单位可以是c(字节)、w(字数)、b(块数)、k(KB)、M(MB)或G(GB)
.或者./是当前目录
/是所有目录
-user username:按文件所有者查找
-group groupname:按文件所属组查找
命令:find ./ -type f -size 1033c
对全目录查询
find / -user bandit7 -group bandit6 -size 33c会查到超多Permission dennied怎么屏蔽?
2>/dev/null
将错误结果输出重定向/dev/null中
/dev/null是一个特殊的设备文件,其实质为空设备文件,查看该文件详情可知,它还是个character special file,大小是0字节,所有人都有读写权限,主要作用是:接收一切输入给它的数据并丢失。就像垃圾桶,的确它也经常被当作垃圾桶,也被称为位桶(bit bucket)
Linux中有三个特殊的文件描述符:0,1,2
0:标准输入(stdin)
1:标准输出(stdout)
2:标准错误(stderr)
综上,所有的错误信息将被丢弃到位桶红,由此过滤掉错误输出
find / -user bandit7 -group bandit6 -size 33c 2>/dev/null
Linux中查看ip地址的命令是?
ip a(推荐,RHEL/Rocky 8+默认可用)
ifconfig(传统命令,需安装net-tools包:yum install net-tools)
Linux中显示当前位置的命令是?
pwd
Linux中查看CPU信息命令是?
lscpu
查看内存信息命令是?
cat /proc/meminfo
查看/etc/passwd文件前两行如何操作?
head -2 /etc/passwd
查看/etc/passwd中包含root的行?
grep root /etc/passwd
命令行基础
命令行完整格式:
命令[选项]......[参数1][参数2]......
查看命令帮助信息
cat --help
Tab键自动补全
可补齐命令字、选项、参数、文件路径、软件名、服务名
快捷键
Ctrl+C:结束正在运行的命令
Esc+.或Alt+.:粘贴上一个命令的参数
Ctrl + l:清空整个屏幕
Ctrl + u:从光标处清空至行首
Ctrl + k:从光标处清空至行尾
Home键:从光标处快速到行首
End键:从光标处快速到行尾
Ctrl + w:往回删除一个单词(以空格界定)
绝对路径与相对路径
.当前目录
..父目录(上一层)
~表示用户的家目录
家用户:专门存放用户个性化信息的目录~
user:用户user的家目录
/root:Linux管理员的家目录
/home:存放所有普通用户的家目录
ls ------ List
格式:ls选项......目录或文件名
常用命令选项:
-l:以长格式显示,显示详细信息
-h:提供易读的容量单位(k、M等)
-d:显示目录本身(而不是内容)的属性
-A:显示所有内容,包含隐藏数据
-R:递归显示目录内容
通配符使用,针对不确定的文档名称,以特殊字符表示
*:任意多个任意字符
?:单个字符(必须要有一个)
a-z\]:匹配范围内的单个字符。注意:匹配结果可能受系统locale设置影响,在某些locale下\[a-z\]可能包含大写字母。若需精确匹配小写字母,可使用\[\[:lower:\]
{a,min,xy}:多组不同的字符串,全匹配
[root@localhost /]# ls /dev/tty[5-7] #匹配tty5、tty6、tty7
[root@localhost /]# ls /dev/tty{1,17,20} #匹配tty1、tty17、tty20
别名的定义
查看已设置的别名
alias[别名名称]
定义新的别名
alias别名名称='实际执行的命令行'
取消已设置的别名
unalias[别名名称]
[root@localhost /]# hostname
[root@localhost /]# alias hn='hostname' #临时定义别名
[root@localhost /]# hn
[root@localhost /]# alias #查看系统中有哪些别名
[root@localhost /]# unalias hn #删除hn别名
[root@localhost /]# hnbash: hn: 未找到命令...
[root@localhost /]# alias myls='ls -l'
[root@localhost /]# myls /etc/passwd
注意:以上方式定义的别名为临时别名,仅在当前终端会话中有效,关闭终端或重启系统后会失效。若需要永久生效,需将alias命令写入用户的 ~/.bashrc 文件中,例如:
[root@localhost /]# echo "alias hn='hostname'" >> ~/.bashrc
[root@localhost /]# source ~/.bashrc #使配置立即生效
目录与文件管理
mkdir ------Make Directory
格式:mkdir/路径/目录名......
[-p]:连同父目录一并创建
[root@localhost /]# mkdir -p /opt/aa/bb/cc/dd
[root@localhost /]# ls -R /opt/aa #递归显示目录内容
[root@localhost /]# mkdir -p /nb04/test04
[root@localhost /]# ls -R /nb04
[root@localhost /]# mkdir -p /cbd/abc01
[root@localhost /]# ls -R /cbd
[root@localhost /]# mkdir -p /xtt/stu01
[root@localhost /]# ls -R /xtt
删除
rm------Remove
格式:rm选项......文件或目录......
常用命令选项:
-r、-f:递归删除(含目录)、强制删除
*安全警告:rm -rf 是非常危险的命令,尤其是 rm -rf / 或 rm -rf / 会删除整个系统的所有数据且无法恢复!使用时务必仔细确认目标路径,建议先用 ls 查看确认后再执行删除操作。**
移动
mv ------ Move
源数据会消失
格式:mv原文件......目标路径
重命名:路径不变的移动
复制
cp------Copy:源数据不会消失
格式:cp 选项... 原文件... 目标路径
常用命令选项
-r:递归,复制目录时必须有此选项
[root@localhost /]# cp /etc/passwd /opt
[root@localhost /]# ls /opt
[root@localhost /]# cp -r /boot /opt
[root@localhost /]# ls /opt
[root@localhost /]# cp -r /home /opt
[root@localhost /]# ls /opt
进行强制覆盖
[root@localhost /]# \cp -r /boot /opt #本次操作临时取消别名
[root@localhost /]# \cp -r /boot /opt #本次操作临时取消别名
复制可以重新命名,目标路径下数据的名称
[root@localhost /]# cp -r /home /opt/myhome
[root@localhost /]# ls /opt
[root@localhost /]# cp /etc/redhat-release /opt/r.txt
[root@localhost /]# ls /opt
[root@localhost /]# ls /opt
[root@localhost /]# cp -r /root /opt/myroot
[root@localhost /]# ls /opt
[root@localhost /]# cp -r /root /opt/myroot
[root@localhost /]# ls /opt/myroot
复制可以支持两个以上的参数,永远把最后一个参数作为目标,其他的所有的参数都作为源数据
[root@localhost /]# mkdir /nb05
[root@localhost /]# ls /nb05
[root@localhost /]# cp -r /home /boot /etc/passwd /etc/shells /nb05
[root@localhost /]# ls /nb05
复制与一个点进行连用,将数据复制到当前路径下
[root@localhost /]# cd /etc/sysconfig/network-scripts/
[root@localhost /]# pwd
[root@localhost /]# cp /etc/passwd .
[root@localhost /]# ls
[root@localhost /]# cd /mnt
[root@localhost /]# pwd
[root@localhost /]# cp /etc/shells .
[root@localhost /]# ls
grep命令与基础正则匹配
格式:grep选项'字符串'文本文件
基本使用
[root@svr1 /]# grep root /etc/passwd
[root@svr1 /]# grep bash /etc/passwd
[root@svr1 /]# grep lisi /etc/passwd
[root@svr1 /]# grep zhangsan /etc/passwd
常用命令选项
-v,取反匹配(不包含)
-i,忽略大小写
[root@localhost /]# grep root /etc/passwd
[root@localhost /]# grep -v root /etc/passwd
[root@localhost /]# grep ROOT /etc/passwd
[root@localhost /]# grep -i ROOT /etc/passwd
基础正则匹配
^word以字符串word开头
word$以字符串word结尾
[root@localhost /]# grep ^root /etc/passwd
[root@localhost /]# grep ^bin /etc/passwd
[root@localhost /]# grep root$ /etc/passwd
[root@localhost /]# grep bash$ /etc/passwd
^$表示空行
[root@localhost /]# cat /etc/default/useradd
[root@localhost /]# grep ^$ /etc/default/useradd #过滤空行
[root@localhost /]# grep -v ^$ /etc/default/useradd#过滤不要空行的内容
[root@localhost /]# cat /etc/login.defs
[root@localhost /]# grep ^$ /etc/login.defs #过滤空行
[root@localhost /]# grep -v ^$ /etc/login.defs #过滤不要空行的内容
如果vim异常退出产生了交换文件(.swp),需要先删除交换文件再重新编辑:
[root@localhost ~]# rm -rf /opt/.1.txt.swp
[root@localhost ~]# vim /opt/1.txt
mount挂载操作
- 连接光盘镜像文件
- 将光盘挂载到/mnt目录,检查/mnt目录内容
- 卸载光盘设备,再次检查目录内容
实现此案例需要按照如下步骤进行
步骤一:使用ls命令列出指定的文件
-
连接光盘镜像文件
[root@server0 ~]# mount /dev/cdrom /mnt //挂载设备mount: /dev/sr0 写保护,将以只读方式挂载 -
将光盘挂载到/mnt目录,检查/mnt目录内容
[root@server0 ~]# ls /mnt //访问设备内容AppStream BaseOS EFI images isolinux LICENSE media.repo -
卸载光盘设备,再次检查目录内容
[root@server0 ~]# umount /mnt/ //卸载设备[root@server ~]# ls /mnt/ //确认结果[root@server0 ~]vim命令模式常用操作
- dd:删除(剪切)光标所在的整行
- yy:复制光标所在的整行
- p:粘贴到光标行的下方
- u:撤销上一步操作
- /keyword:向下搜索关键词keyword(摁n跳转到下一个匹配)
vim末行模式常用操作
- :wq 保存并退出
- :q! 不保存强制退出
- :set nu 显示行号
- :set nonu 取消显示行号
系统中默认的解释器是哪个程序
/bin/bash
结束当前正在运行的命令,快捷键是
Ctrl+l
如何快速去往用户root的家目录
cd /root或者cd ~root或者cd ~
ls常用选项有哪些
-l -h -d -A -R
如何查看linux系统具体版本
cat /etc/redhat-release
实现hn相当于hostname
alias hn='hostname'
强制删除一个文件夹以及其内容
rm -rf
cp命令如果源数据是一个目录,需要加什么选项
-r
vim有几种工作模式,分别是什么
命令模式、输入模式(插入模式)、末行模式
过滤/etc/passwd文件内容,不包含root行
grep -v root /etc/passwd
将/opt重新命名成/student
mv /opt /student
tar打包与压缩
tar 本身是一个打包(归档)工具,将多个文件/目录合并为一个归档文件。配合 -z/-j/-J 选项可在打包的同时调用压缩工具进行压缩。
格式:tar 选项 /路径/归档包名字/源数据
-c:创建新的文档
-f:指定归档包名字(必须在所有选项最后)
-z、-j、-J:调用.gz、.bz2、.xz格式的压缩工具进行处理
[root@localhost /]# tar -zcf /root/cbd.tar.gz /etc/passwd [root@localhost /]# ls /root [root@localhost /]# tar -jcf /root/haha.tar.bz2 /etc/passwd [root@localhost /]# ls /root [root@localhost /]# tar -Jcf /root/cctv.tar.xz /etc/passwd [root@localhost /]# ls /root注意:如果不加 -z/-j/-J 选项,则只打包不压缩,生成的文件通常命名为 .tar 后缀。
网站根目录/var/www下比较重要的目录
- sites //站点目录
- scripts //脚本文件 找秘钥或者算法或者其他的一些python文件全去这里找,如果没有该文件,则可以搜password、hash、md5、
- robots.txt //告诉爬虫哪些可以访问哪些不可用访问
- modules //模块文件
- includes //文件包含使用的其他站点文件
- README.txt //参考手册
- update.php //更新脚本
- web.config //web的配置文件