1 inux目录命令
在 WIN 中,它是多根 c:\ d:\ e:
Linux 只有一个/根目录
使用 tree 命令查看 linux 目录结构,如果没有这个命令,需要手工安装一下
1 tree,安装tree
yum makecache
进程运行中 把进程杀掉
kill -9 11767
yum install tree -y
-y(当安装过程提示选择全部为"yes")
tree / 显示所有根目录下的递归;
/boot存放的系统启动相关文件
/dev,device的缩写,设备文件,声卡 网卡 光驱
/etc 常用系统及二进制安装包配置文件默认路径和服务器启动命令目录,如:
/etc/passwd 用户信息文件
/etc/shadow 用户密码文件
/etc/group 存储用户组信息
/etc/fstab 系统开机启动自动挂载分区列表
/etc/hosts 设定用户自己的 IP 与主机名对应的信息
[root@xuegod5 etc]# ls /etc/ssh/
moduli ssh_host_ecdsa_key ssh_host_ed25519_key.pub
ssh_config ssh_host_ecdsa_key.pub ssh_host_rsa_key
sshd_config ssh_host_ed25519_key ssh_host_rsa_key.pub
[root@xuegod5 etc]#
/home 普通用户的家目录
[root@xuegod5 etc]# ls /home
mengke
我的普通用户是mengke,
[root@xuegod5 etc]# useradd -m mengke1
[root@xuegod5 etc]# useradd -M mengke2
[root@xuegod5 etc]# ls /home/
mengke mengke1
创建用户mengke1,-m是创建家目录,-M是不创建家目录;
/lib存放库文件
/mnt /media 临时挂载存储设备挂载目录,比如u盘等目录
/opt 存放可选,第三方安装包
/proc操作系统在内存运行时,进程内存硬盘等数据信息存放在proc
/sys/系统目录,存放硬件信息
/run,运行目录,内存里存放的是系统运行时的数据,比如进程PID文件
/sbin 系统管理的命令,超级管理员root的可执行命令存放地,普通用户无权操作;
/tmp 存放临时文件,
/var日志文件
/usr 存放应用程序文件
/usr/bin普通用户使用的程序
/usr/sbin 管理员使用的程序
2 绝对路径,相对路径
绝对路径:从根目录开始指向一个完整的路径,如
cd /etc/netword/config.inc
相对路径:从当前路径开始算指向另一个路径。
注:平时使用相对路径,写的字符少,修改配置文件的时候用绝对路径不容易出错;
3 文件管理命令
创建/修改/移动/删除: touch创建文件, mkdir创建目录, mv移动文件或目录,mv重命名文件目录或者文件, vi和vim修改编辑文件; rm删除文件, cp复制拷贝文件或文件夹
创建文件/
touch aa.txt
批量创建多个文件touch test{6..20}
[root@xuegod5 ~]# touch test{6..20}
[root@xuegod5 ~]# ls
aa.txt test10 test13 test16 test19 test7 公共 图片 音乐
anaconda-ks.cfg test11 test14 test17 test20 test8 模板 文档 桌面
initial-setup-ks.cfg test12 test15 test18 test6 test9 视频 下载
然后删除刚才创建的6-20的15个文件
rm -rf test*
vim命令创建新的文件
vim
echo 重定向创建新的文件
echo bbb > 33.txt,重定向创建文件33.txt,向里面写入文件内容bbb;
[root@xuegod5 ~]# cat 33.txt
bbb
[root@xuegod5 ~]#
echo > 44.txt
cat 44.txt 打开里面是有换行符的,不是空的;
touch 55.txt ,cat 55.txt后里面是空的,
注:学习网络安全关键在于细节
[root@xuegod5 ~]# echo 44.txt
44.txt
[root@xuegod5 ~]# echo > 44.txt
[root@xuegod5 ~]# touch 55.txt
[root@xuegod5 ~]# cat 44.txt
//这里有换行
[root@xuegod5 ~]# cat 55.txt
[root@xuegod5 ~]#
echo - n >44.txt 去掉换行符,或者> 44.txt
cat 33.txt > 44.txt 把33.txt文件内容写入到44.txt
mkdir 创建目录
创建多个目录mkdir kk{1..5},然后再用rm删除
[root@xuegod5 ~]# mkdir kk{1..5}
[root@xuegod5 ~]# dir
11.txt 44.txt initial-setup-ks.cfg kk3 m11 视频 下载
22.txt 55.txt kk1 kk4 公共 图片 音乐
33.txt anaconda-ks.cfg kk2 kk5 模板 文档 桌面
[root@xuegod5 ~]# rm -rf kk*
[root@xuegod5 ~]# ls
11.txt 33.txt 55.txt initial-setup-ks.cfg 公共 视频 文档 音乐
22.txt 44.txt anaconda-ks.cfg m11 模板 图片 下载 桌面
[root@xuegod5 ~]#
cp复制,cp qq.txt /tmp/把 文件qq.txt 拷贝到temp下;
mv移动文件或文件夹;
mv重命名mv old_filename new_filename
另外rename 's/^old_/new_/' old_*,rename也可以重命名
复制文件或目录、选项、语法
基本功能12
cp命令是Linux系统中用于复制文件或目录的命令。它可以将指定的源文件或目录复制到目标位置,功能类似于MSDOS中的copy命令。
常用选项
-a:相当于-dpR,用于递归复制目录,并保留链接、文件属性等。
-d:复制符号链接时,链接指向原始文件。
-f:强制覆盖目标文件或目录,不提示。
-i:覆盖既有文件之前先询问用户。
-l:对源文件建立硬链接,而不是复制文件。
-p:保留源文件的属性。
-R/r:递归复制目录及其内容。
-s:对源文件建立符号链接,而不是复制文件。
-u:仅当源文件比目标文件更新,或者目标文件不存在时,才复制文件。
-S:备份文件时使用指定的后缀。
-b:覆盖已存在的文件前将目标文件备份。
-v:详细显示命令执行的操作。
语法和使用示例
基本语法为:cp [选项] 源文件或目录 目标文件或目录。例如,要将文件example.txt复制到目录/target/dir中,可以使用命令cp example.txt /target/dir/。如果需要递归复制整个目录及其内容,可以使用-r选项,如cp -r source_dir /target/dir/。
4 查看文件命令
4.1 cat 命令语法:cat 文件名
作用:查看文件内容,一次显示整个文件的内容
4.2 more命令:作用:以分页形式显示文件内容
语法:more + 文件名
空格键或f:向下翻一页。
b:向上翻一页。
q 或 Ctrl+C:退出more命令。
4.3 命令之:less
作用:和 more 功能一样
语法:less +文件名
less:支持前后翻滚,既可以向上翻页(pageup 按键),也可以向下翻页(pagedown 按键)。,空
格键是向下翻页,Enter 键是向下翻一行
4.4 命令之:head
作用: 用于显示文件的开头的内容。在默认情况下,head 命令显示文件的头 10 行内容
语法:head(选项)文件名
参数: -n 显示从文件头开始的行数
[root@xuegod5 tmp]# head -n 3 /etc/passwd
显示前三行;
4.5 命令之:tail
作用: 用于显示文件中的尾部内容。默认在屏幕上显示指定文件的末尾 10 行
语法:tail (选项)文件名
参数:
-n 显示文件尾部多少行的内容(n 为数字)
-f 动态显示数据(不关闭),常用来查看日志
[root@xuegod5 tmp]# tail -n 3 /etc/passwd
# tail -f /var/log/secure 查看日志,可以动态查看到登录成功的日志
4.6 tac /etc/passwd 倒着显示查看;
4.7 nl /etc/passwd 查看并加上行号
5 tar命令进行归档和压缩
tar是Linux中常用的归档工具,它可以对文件或目录进行打包但不压缩,或者配合其他工具进行压缩
把多个文件放到一个包里叫归档;我们日常的打包操作其实就是归档并压缩;
5.1 压缩单个文件或目录:
tar -cvf archive.tar file1
5.2 压缩多个文件:
tar -cvf archive.tar file1 file2
5.3 压缩某个目录到指定目录下文件
# tar -cvf /tmp/11.tar /etc
把/etc 根目录下ect下文件夹所有文件归档到/tmp下文件名为11.tar;
说明:在这些命令中,“-c”表示创建新的归档文件,“-v”表示详细模式,“-f”表示需要跟归档文件的名字。
5.4 解压缩到指定目录:
tar -xvf archive.tar -C /target/directory
在这些命令中,“-x”表示解压缩。
注意:tar命令本身不支持压缩,需要配合gzip或者bzip2工具进行压缩。
5.5 归档+压缩
语法:tar czvf newfile.tar.gz SOURCE
语法:tar czvf 压缩后的文件名(tar.gz tar.bz2) 需要压缩的文件或目录
常用参数:
-z, --gzip 以 gzip 方式压缩 扩展名: tar.gz
-j : 以 bz2 方式压缩的 扩展名:tar.bz2
-J: 以 xz 方式压缩 扩展名:tar.xz
执行tar czvf /root/meng/ect.tar.gz /etc
把/etc整个目录归档并压缩到/meng下文件名为ect.tar.gz;
执行tar cvf /root/meng/ect.tar /etc,这次归档打包,不压缩;
然后用 ls -l命令查看meng下2个文件的大小;
[root@xuegod5 meng]# ls -l
总用量 44340
-rw-r--r-- 1 root root 11128724 10月 25 16:18 ect.tar.gz
-rw-r--r-- 1 root root 34273280 10月 25 16:16 etc.tar
(reverse-i-search)`meng': tar czvf /root/^Cng/ect.tar.gz /etc
压缩过的gz文件明显比另一个小了很多;
另 ls - lh 查看是显示M,ls - l显示文件大小是k;
5.6 zip压缩工具
zip在linux和window都可以用;linux不能用rar,window不能用tar;
zip 是压缩程序,unzip 是解压程序。
例 1:压缩文件:
[root@xuegod63 ~]# zip a.zip /etc/passwd
例 2:将所有.jpg 文件压缩成一个 zip 包
[root@xuegod63 ~]# touch {1..4}.jpg
[root@xuegod63 ~]# ls
[root@xuegod63 ~]# zip all.zip *.jpg
解压缩:
[root@xuegod63 ~]# unzip ~/grub.zip
[root@xuegod63 ~]# unzip ~/grub.zip -d /opt/ #-d 解压到指定的目标/opt
5.6 ll命令
文件类型、权限
在Linux系统中,ll命令实际上是ls -l命令的别名,用于以详细列表的形式显示文件或目录的权限、所有者、大小等信息。当你看到drwxr-xr-x这样的输出时,它表示文件或目录的权限设置。
drwxr-xr-x的具体含义如下:
d:表示这是一个目录(directory)。如果第一个字符是-,则表示这是一个普通文件。
rwx:表示文件所有者(通常是创建该文件或目录的用户)具有读、写和执行权限。
r-x:表示与文件所有者同组的用户具有读和执行权限,但没有写权限。
r-x:表示其他用户(不属于文件所有者所在组的用户)也具有读和执行权限,但没有写权限。
这种权限设置确保了文件或目录的安全性,防止未经授权的修改和删除。例如,如果一个目录设置为drwxr-xr-x,那么文件所有者可以读取、写入和执行该目录,同组的用户可以读取和执行,而其他用户也可以读取和执行,但没有任何人可以修改或删除该目录中的内容
drwxr-xr-x意思如下:第一位表示文件类型。d是目录文件,l是链接文件,-是普通文件,p是管道。后面的分三个三个来看,即 rwx 、r-x 、r-x。第一个: root :r 是可读,w 是可写,x 是可执行,rwx 意思是可读可写可执行。第二个: 一般用户(用户组):r-x 是可读可执行不可写。第三个: 其他用户,r-x 是可读可执行不可写。综合起来就是权限设置为:文件所有者(root)可读可写可执行,与文件所有者同属一个用户组的其他用户可读可执行,其它用户组可读可执行。