练习题

  1. linux命令格式是什么样?

Linux命令 可选的参数 要操作的对象

  1. linux命令必须添加参数才能执行吗

不是,参数是可选的

  1. 解释linux的命令提示符,如何用linux命令解析 [root@pylinux ~]#

whoami # 查看当前登录的是谁 root
hostname # 这台机器主机的名字 pylinux
hostnamectl set-hostname 新的主机名 # 更改主机名
logout # 退出登录
~ # 代表用户家目录
# # 超级用户的身份提示符
$ # 普通用户的身份提示符

  1. linux的目录分隔符是?

正斜杠 / 在开头是根目录,在其他位置都是分隔符

  1. 简述Linux的目录结构

Linux目录结构是一棵倒状的树,以 / 根目录为起点

  1. 切换到上一级目录

. # 当前工作目录
.. # 上一级的目录
- # 上一次的共工作目录
~ # 当前系统用户的家目录

  1. 切换到上一次目录

cd -

  1. 切换到用户家目录

cd ~

  1. 查看当前工作目录

pwd

  1. 当前目录是/home,以绝对、相对两种路径方式进入/opt目录

绝对路径:路径以根目录为起点,就是绝对路径
相对路径:非根目录为起点的都是相对路径

  1. 列出/opt/下所有文件,包含隐藏文件,且显示详细信息(时间、文件大小)

ls -a -l /opt

  1. 以树状结构显示文件夹内容

tree /opt

  1. 一条命令创建/tmp/chaoge/linux文件夹

mkdir -p /tmp/chaoge/linux

  1. 创建python脚本first.py

touch first.py

  1. 一条命令创建/tmp/chaoge1.txt 、 /tmp/chaoge2.txt 、/tmp/chaoge3.txt

有两种方式:
touch /tmp/chaoge1.txt /tmp/chaoge2.txt /tmp/chaoge3.txt
touch /tmp/chaoge{1..3}.txt

  1. 复制/opt/下所有内容到/tmp/下

cp 可选参数 要复制的内容 复制之后的内容
cp -r /opt /tmp # 递归的拷贝data整个文件夹,放入/tmp下
cp -r /opt/* /tmp/ # 递归拷贝data中所有的内容,放到/tmp下

  1. 更改文件名first.txt为second.txt

mv 要移动的文件 更改之后的文件
mv first.txt second.txt

  1. 把/opt/下所有内容移动到/tmp下

mv /opt/* /tmp/

  1. 强制删除/tmp下所有内容

rm -rf /tmp/*

  1. 查看ls命令的帮助信息

ls --help # 命令的简短帮助信息
man ls # ls命令的帮助手册
info ls # 同上

  1. 立即重启的命令

reboot
shutdown -r now
poweroff # 关机
shutdown -h now # 关机

  1. 如何永久设置linux环境变量

$PATH # Linux环境变量的名字
echo $PATH # 获取PATH变量的值,以:形式分割
PATH="环境变量的路径" # 执行一次是临时生效
# 永久生效还得修改Linux的全局环境变量文件 /etc/profile
vim打开/etc/profile写入如下内容:
1.PATH=""新的环境变量"
2.source /etc/profile

  1. linux的常见配置文件目录是

/etc/nginx.conf # web服务器配置文件
/etc/my.cnf # mysql配置文件

  1. vim三种模式是?使用流程是?

vim filename.txt 打开文件,此时进入了命令模式
1.在命令模式下,输入a(在光标后面开始编辑) i(在光标当前位置开始编辑) o(在光标下一行开始编辑) 都可以进入编辑模式
2.在编辑模式写完代码之后,按下esc退出编辑模式
3.按下:进入底线命令模式,输入:wq!

  1. 查看文件且显示行号

cat -n chaoge.txt

  1. 如何清空文件内容,注意是空内容,而非空格

利用重定向符号,输出重定向
> 重定向覆盖输出符
>> 重定向追加输出符
> chaoge.txt # 完全清除文件内容

  1. 显示文件前30行

head -n 30 filename.txt

  1. 显示文件后50行

tail -n 50 filename.txt

  1. 实时刷新文件内容

tail -f chaoge.txt # tail是从文件结尾开始读取,f参数是刷新文件内容,常用在检测日志变化中

  1. 读取文件内容且倒序排序

cat chaoge.txt | sort -n -r

  1. 读取文件内容进行排序后去重

cat chaochao.txt | sort -n | uniq

  1. 读取文件内容且排序后,统计重复行的次数

cat chaochao.txt | sort -n | uniq -c

  1. 统计文件一共有多少行

wc -l chaochao.txt

  1. 如何查看文件的详细信息(inode号,访问、修改时间、链接数)

stat chaochao.txt

  1. 找出服务器上所有以”.py”结尾的文件

find 从那里找 -type 指定文件的类型 -name 要找的文件叫什么
find / -type f -name '*.py'

  1. 找出服务器2天内被访问过的文件

-atime -2 #在两天内被访问过的文件
find / -maxdepth 4 -atime 2 -type f -name '*.txt'

  1. 找出服务器大于50M的文件

find / -maxdepth 3 -type f -size +50M # 最大搜索深度的3层

  1. 找出/tmp/目录下所有的txt文件,然后删除

find /tmp/ -name '*.txt' -ok rm {} \;

  1. 把/data/html/文件夹打包压缩成data_html.tgz文件

tar 打包和压缩的命令
-c 打包
-x 解包
-v 显示过程
-f 指定文件名
tar -czvf data_html.tgz /data/html/

  1. 如何解压缩alltmp.gz文件

gzip -d alltmp.gz

  1. 如何解压缩data.zip文件

unzip data.zip

  1. 显示具体的系统时间,时:分:秒

date +%T # 显示时分秒
date +%F # 显示年月日

  1. 如何彻底粉碎文件

shred -u test.txt # shred给文件写入随机的数据,让文件彻底的紊乱。-u覆盖文件内容后,彻底删除

  1. 查看命令是否执行成功

echo $? # 只要返回的不是0,那就是没有执行成功