文章目录
查看 Linux 系统的版本信息
cat /etc/os-release # 包含有关发行版的详细信息
cat /proc/version # 包含内核版本信息,以及编译内核时包含的一些发行版信息
Linux 配置文件
- 登录式 Shell:
- 正常通过终端登录的 Shell。
- su - username。
- 登录式 Shell 读取配置文件过程:
- /etc/profile(系统级)–> /etc/profile.d/*.sh(系统级)–> ~/.bash_profile(用户级)–> ~/.bashrc(用户级)
- 非登录 Shell:
- su username。
- 图形终端下打开的命令窗口。
- crontab 执行的 Shell 脚本。
- 非登录式 Shell 读取配置文件过程:
- ~/.bashrc(用户级)
su、sudo
(1)su
- su root:输 root 密码,切换 root 身份。不改变环境变量,即 Shell 环境仍然是普通用户的 Shell。
- su - root :输 root 密码,连用户和 Shell 环境一起切换成 root 身份。
- 用 echo $PATH 命令看 su 和 su - 后的环境变量。
- 系统按照环境变量下的路径顺序搜索指令。只有切换了 Shell 环境才不会出现 PATH 环境变量错误,报 command not found 的错误。
(2)sudo
- sudo -i:输当前用户密码,用户和环境都换了。
- sudo -s :输当前用户密码,切换 root 身份,但终端环境没变。
- sudo 命令:可不切换用户用 root 权限执行一条命令。
- sudo 是一种权限管理机制,管理员可以授权一些普通用户去执行一些 root 执行的操作,而不需要知道 root 的密码,只需要输当前用户密码证明我是我。
- sudo 使用默认的 sudoers 安全策略,并保留一个特殊的配置文件 /etc/sudoers。添加
rc ALL=(ALL:ALL) NOPASSWD:ALL
,即可给用户 rc 添加 sudo 权限。
ll、ls、cd、cp
(1)ll、ls
- ll:是 ls -l 的别名,显示当前目录下文件详细信息
- ls:显示当前目录下文件
ls -lh # 以 KB、MB 等单位显示
ls -la # 查看隐藏文件
(2)cd
- cd / :根目录
- cd … :返回上一层目录
- cd …/… :返回上两级目录
- cd - :返回之前的目录
(3)cp
- cp -r /opt/* /opt/a/ :将opt下所有文件移到a文件夹下
- cp -r /opt/a /opt/b :将a文件夹移到b中
vim、less
(1)vim
- vim 文件名:打开文件
- i 进入insert模式
- 快捷键
- nG:光标移至第n行首
- 0:光标移至当前行首
- $:光标移至当前行尾
- /pattern:从光标开始处向文件尾搜索pattern
- 退出
- Esc + :wq:保存退出
- Esc + :q!:不保存退出
(2)less 浏览文件
less xxx
ssh、rsync、scp、sftp
(1)ssh
- 提供远程连接服务器的服务
- 对传输进行加密
# 如果设置了SSH免密登录,可直接运行这个命令登录到服务器。如果没有设置,系统会提示你输入密码或确认公钥指纹。
ssh user@192.168.1.100
(2)rsync
- 将远程机器目录同步到本地目录的rsync命令实例
rsync -avz -e ssh user@remote_host:/tmp /etc/fstab
- 把本地的/local/directory目录同步到remotehost上的/remote/directory目录
rsync -avz -e ssh /local/directory username@remotehost:/remote/directory
(3)scp
- 复制本地文件到远程服务器
scp /path/to/local/file user@remote_host:/path/to/remote/directory
- 复制远程服务器上的文件到本地
scp user@remote_host:/path/to/remote/file /path/to/local/directory
(4)sftp
- sftp 用户名@Ip地址:连接到远程服务器
- sftp root@10.3.212.16
- 不用加端口号
- 查看文件
- 远端 本地
pwd lpwd
ls lls
cd lcd
- 远端 本地
- put a.txt:把当前目录下的a.txt文件上传到sftp服务器
- get b.txt:把sftp服务器下的b.txt文件下载到当前目录下。
- exit / quit:退出
chown、chomd
(1)chown 设置文件所有者和文件关联组
- 把 /var/run/httpd.pid 的所有者设置 root:
chown root /var/run/httpd.pid
- 将文件 file1.txt 的拥有者设为 runoob,群体的使用者 runoobgroup :
chown runoob:runoobgroup file1.txt
- 将当前前目录下的所有文件与子目录的拥有者皆设为 runoob,群体的使用者 runoobgroup:
chown -R runoob:runoobgroup *
(2)chomd
chomd -R 755 xxxx
tar、mkdir、touch、echo、printf
(1)tar
tar -xzvf xxx.tar.gz
tar -czvf etc.tar.gz /etc/ #打包并压缩/etc/目录,压缩包存放在当前目录,名字为etc.tar.gz
(2)mkdir
# 创建多级目录
mkdir -p /usr/php
(3)touch
- 创建一个空的文件
touch filename.txt
(4)echo、printf
# 创建一个带有内容的文件
echo "Hello, World!" > filename.txt
printf "Hello, World!\n" > filename.txt
# 追加内容到已存在的文件
echo "Another line" >> filename.txt
printf "Another line\n" >> filename.txt
nohup、netstat、ps
(1)nohup:程序后台运行不退出
# 运行结果输出到runoob.log,将标准错误2重定向到标准输出&1,标准输出&1再被重定向输入到runoob.log文件中。
nohup /root/runoob.sh > runoob.log 2>&1 &
(2)netstat:查看端口占用情况
netstat -anp|grep 8081
netstat -nultp # 不指定端口号
kill -9 23886
(3)ps:显示进程信息
ps -ef|grep canal # 结果第二三列为pid和ppid
https://blog.csdn.net/ActionTech/article/details/124193685?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandingword~default-0-124193685-blog-127219283.235v38pc_relevant_anti_vip_base&spm=1001.2101.3001.4242.1&utm_relevant_index=3
https://www.cnblogs.com/ludingchao/p/17572209.html
df、du
(1)df:查看磁盘空间大小
df -h
(2)du
du -sh * 查看磁盘空间
locate、find、xargs
(1)locate
- 快速找到文件的位置
locate a.py
(2)find、xargs
- 搜索文件名匹配特定模式的文件,可以结合使用 find 和 xargs。
- 查找当前目录及其子目录中所有的 .txt 文件,并在其中搜索字符串 “example”。
find . -type f -name "*.txt" | xargs grep 'example'
wc
- 统计文件行数
wc -l