Linux文件管理练习
1、Linux文件管理练习
1.1、显示根目录下的文件内容
ls /
1.2、显示根目录下文件内容的详细信息,以及文件大小
ls -l -h / 或者 ll -h /
1.3、显示当前目录下的文件大小
ls
1.4、显示当前机器登录的用户
whoami
1.5、显示主机的名字
hostname
1.6、更改主机名字
hostnamectl set-hostname 新主机名字
1.7、代表用户家目录
~
1.8、 查看用户列表
tail /etc/passwd
1.9、创建用户
useradd haige
1.10、使用新建用户登录
su - haige
1.11、切换目录
- . 当前目录
- .. 切换到上一级目录
- - 切换到上一次目录
- ~ 前系统登录用户的家目录
1.12、查看当前工作目录
pwd
1.13、当前目录是/home,以绝对、相对两种路径方式进入/opt目录
cd /opt
cd ../opt
1.14、列出/opt下所有的文件,包含隐藏文件,且显示详细信息(时间、文件大小)
ls -l -a /opt
1.15、 以树状结构显示文件夹内容
tree /opt
1.16、一条命令创建 /tmp/haige/linux文件夹
mkdir -p /tmp/haige/linux
1.17、创建python脚本first.py
touch first.py
1.18、一条命令创建/tmp/haige/haige1.txt、/tmp/haige/haige2.txt、/tmp/haige/haige3.txt
方式1:touch /tmp/haige/haige1.txt /tmp/haige/haige2.txt /tmp/haige/haige3.txt
方式2:touch /tmp/haige/haige{1..3}.txt
1.19、 复制/data 下所有的内容到 /tmp下
cp -r /data/* /tmp/ data下所有内容放入/tmp下
cp -r /data/ /tmp/ data整个文件夹放入/tmp下
1.20、更改文件夹名first.py 为second.py
mv first.py second.py
1.21 、把/opt/下所有的内容移到/tmp下
mv -r /opt/* /tmp
1.22、强制删除/tem下的内容
rm -rf /tem/*
1.23、立即重启命令
reboot
shutdown -r now
1.24、关机命令
poweroff
shutdown -h now
1.25、如何永久设置linux环境变量
$PATH 代表linux的环境变量的名
PATH="环境变量路径" 执行一次,是临时生效
永久生效还得修改linux的全局环境变量文件 /etc/profile
用vim打开/etc/profile写入文件,使用大写G移动到最后一行,填写后
然后使用 source /etc/profile生效
1.26、vim三种模式
在命令模式下,输入a(在光标后输入)、i(在光标当前输入) 、o(在光标下一行输入)
1.27、清空文件内容
echo "" > a.txt 还有一行
> a.txt 没有数据
> 重定向覆盖输出符
>> 重定向追加输出符
1.28 、 查看文件的行数
cat -n a.txt
1.29、显示文件
显示文件前30行: head -n 30 a.txt
显示文件最后30行:tail -n 30 a.txt
1.30、实时刷新文件内容
tail -f a.txt
1.31、读取文件内容进行排序后去重
cat a.txt | sort -n - r
# -r是反转排序的意思
# -n是按数字排序 不加就是按ascii码
# -u 是去重
# -o 是将排序后的内容写入指定文件中
# -c 是统计重复行的次数
sort -t ':' -k 2nr a.txt
# 使用分隔符':' 使用第2列的数据进行数字倒序
1.32、 sort 常见选项
b 忽略每行前面开始出的空格字符。
-c 检查文件是否已经按照顺序排序。
-d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符。
-f 排序时,将小写字母视为大写字母。
-i 排序时,除了040至176之间的ASCII字符外,忽略其他的字符。
-m 将几个排序好的文件进行合并。
-M 将前面3个字母依照月份的缩写进行排序。
-n 依照数值的大小排序。
-u 意味着是唯一的(unique),输出的结果是去完重了的。
-o<输出文件> 将排序后的结果存入指定的文件。
-r 以相反的顺序来排序。
-t<分隔字符> 指定排序时所用的栏位分隔字符。
+<起始栏位>-<结束栏位> 以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。
1.33、读取文件内容排序后,统计重复行的次数
cat a.txt | sort -n |uniq -c
1.34、统计文件中有多少行
cat -n a.txt 按行号展示
wc -l a.txt 显示这个文件有多少行
1.35、如何查看文件的详细信息(inode号,访问,修改时间,链接数)
stat a.txt
1.36、找出服务器上所有“.py”结尾的文件
find 你要从哪里找 -type 指定文件的类型(文件、文件夹) -name 你要在的名字
find / -type f -name '.py' 查找所有层
find / -maxdepth 3 -type f -name '.py' 查找3层内的文件
1.37、找出服务器2天内被访问过的文件
find / -maxdepth 3 -type f -atime -2 -name '*.txt'
1.38、找出服务器大于50M的文件
find / -maxdepth 3 -type f -size +50M
1.39、找出/tmp/目录下所有的txt文件,然后删除
find /tmp -type f -name '*.txt' -ok rm -rf {} ;
1.40、把/tmp/html文件夹打包压缩成data_html.tgz文件
tar 是打包和压缩的命令
-c 打包
-x 解压
-v 显示过程
-f 指定文件名
tar -czvf data_html.tar.gz /tmp/html/ # 会将对应的路径压缩到文件中
tar -czvf data_html.tgz -C /tmp/html/ . # 不会将路径压缩到文件中
1.41、如何解压缩alltmp.gz文件
tar tvf data_html.tar.gz 查看压缩文件内部结构
gzip -d alltmp.gz #解压缩alltmp.gz文件
tar -xzvf alltmp.gz #解压缩alltmp.gz文件
1.42、如何解压缩data.zip文件
unzip data.zip
1.43、显示具体的系统时间,时:分:秒
date +%T #时分秒
date +%F #年月日
1.44、如何彻底粉碎文件
shred -u a.txt # 彻底删除
shred a.txt # 往文件写入随机字符串