Linux基础命令
Posted 代码改变世界!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux基础命令相关的知识,希望对你有一定的参考价值。
1 processon脑图:linux命令基本操作
在linux下面: 没有提示(没有报错)就是最好的提示!!!
在linux下面: 没有提示(没有报错)就是最好的提示!!!
在linux下面: 没有提示(没有报错)就是最好的提示!!!
1.1 IP地址;
192.168.1.155 本机IP地址
127.0.0.1 本地回环地址
0.0.0.0 也是本地回环地址, 它包括了192.168.1.155和127.0.0.1
1.2 linux操作小技巧
1.tab键 用于自动补全命令/文件名/目录名
2.ctrl + l 清理终端显示
3.clear 清理终端显示
4.ctrl + c 终止当前操作
1.3 创建用户命令
useradd huangwen passwd huangwen
1.4 linux系统命令操作语法格式
命令 | 空格 | 参数 | 空格 | 【文件或路径】需要处理的内容 |
---|---|---|---|---|
rm | -rf | /tmp/* | ||
ls | -la | /home |
1.5 安装好虚拟机就要做的事情 (非常重要************)
(1) 被系统自带的防火墙阻止(firewalld)
systemctl stop firewalld # 先临时关闭防火墙
systemctl disable firewalld # 再永久关闭防火墙
(2) 美国国家安全局的防火墙(selinux)
# 临时关闭
getenforce # 查看状态(0表示关闭 1表示开启)
setenforce 1/0 # 表示开启/关闭
# 永久关闭
vim /etc/selinux/config
# 修改
SELINUX=disabled
2 linux基本命令
2.1 PS1(重要指数**)
echo $PS1
# 修改命令提示符
PS1="[\\u@\\h \\w \\t]\\$"
2.2 更改主机名
hostnamectl set-hostname qishione
2.3 创建多个目录的命令
mkdir -p
mkdir -p /root/qishi8/maxun/{1,2,3} # 创建多个目录,放在大括号里面用逗号隔开,千万要注意不能有空格
touch /root/qishi8/maxun{1,2,3} # 创建多个普通文件
2.4 vim(重要指数*)
vi/vim操作流程:
1. vi 打开文件 此时进入命令模式,你可以输入 i/a/o 命令,进入编辑模式
2. 在编辑模式下,开始输入字符串
3. 写完之后, 按下 esc 回到命令模式,按下 : 进入底线命令模式
4. :w 写入不退出 :wq! 写入且强制退出
底线命令模式
w 保存
q 退出
wq 保存退出
q! 无理由退出
wq! 无理由保存退出
2.5 cat命令(重要指数***)
cat -n 文件名 查看文件,并显示行号
cat 文件名 查看文件
# 追加文字到文件
cat >>/tmp/oldboy.txt << EOF
难难难 道德玄
不对知音不可谈
对了知音谈几句
不对知音枉费舌尖
EOF
echo \'你好\' >> /tmp/shi.txt
2.6 more和less命令(重要指数***)
more /etc/passwd # 从上到下
less /etc/passwd # 从下到上,并且留白
按下空格space是翻页
按下b键是上一页
回车键向下读取内容
2.6.1 echo命令
echo "美景一时观不透" > changyuan.py # 清空文件中原有的内容并写入新的内容
echo "美景一时观不透" >> changyuan.py # 追加写入
2.7 cp命令(重要指数)
复制文件或文件夹
复制 > copy > cp
# 复制xxx.py到/tmp目录下
cp xxx.py /tmp/
# 复制xxx.py顺便改名为tiger.py
cp xxx.py /tmp/tiger.py
cp -r 递归,复制目录以及目录的子孙后代
cp -p 复制文件,同时保持文件属性不变
2.8 删除命令(重要指数)
删除 > remove > rm
参数 -i 需要删除确认
-f 强制删除
-r 递归删除目录和内容
rm -r也有提示,因为有alias设置
alias命令,查看别名
alias rm =>
alias rm="rm -i"
2.9 alias命令(重要指数***)
当你输入rm命令时,提示"你这个饿货,不要再使用rm命令了,求你了大哥"
alias rm="echo \'你这个饿货,不要再使用rm命令了,求你了大哥\'"
2.10 查找命令find(重要指数***)
查找我想要的文件,过滤掉不需要的文件
-name 按照文件名查找文件
-type 查找某一类型的文件,诸如:
b - 块设备文件。
d - 目录。################
c - 字符设备文件。
p - 管道文件。
l - 符号链接文件。#############
f - 普通文件。#################
s - socket文件
# 找出/tmp所有以 .txt 结尾的文件
find /tmp/ -type f -name "*.txt"
# 找到/etc下所有名字以host开头的文件
find /etc -name \'host*\'
# 找到/opt上一个名为settings.py
find /opt -name \'settings.py\'
2.11 管道符"|" (重要指数)
第一个命令输出的结果,提供给第二个命令进行过滤,还可以进行第三次或多次过滤
ps -ef 表示查看当前系统运行的所有进程
netstat -tunlp 表示查看当前系统开放的所有端口
ps -ef | grep lvmeatad # 过滤出所有lvmaetad关键字的进程
netstat -tunlp 查看服务器的端口占用情况
netstat -na | find "445" windows下查看并过滤出445端口的占用情况
139和445是windows下面的共享文件端口
主机IP相关:
192.168.12.139表示我的linux机器
127.0.0.1/localhost 表示我自己
0.0.0.0 表示192.168.1.197和127.0.0.1和localhost组合起来
2.12 grep命令,查找文件下有关键字的内容(重要指数)
# 找出/etc/passwd下root用户
grep "root" /etc/passwd
# 找出网卡配置文件下的dhcp 通过关键字查找
grep "dhcp" /etc/sysconfig/network-scripts/ifcfg-ens33
#通过路径
grep /sbin/nologin /etc/passwd
# 找到/etc/passwd的所有与mysql有关行,行号
cat /etc/passwd |grep -n \'mysql\'
-i : 忽略大小写
-n : 输出行号
-v : 反向选择
2.13 head和tail命令
head显示文件前几行,默认前10行
tail显示文件后几行,默认后10行
#查看前两行
head -2 /tmp/oldboy.txt
#查看后两行
tail -2 /tmp/oldboy.txt
#持续刷新显示
tail -f xx.log
2.14 which命令(重要指数)
which命令用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录。
which python #python命令在哪
/usr/bin/python #命令文件绝对路径
2.15 远程COPY命令(scp) (重要指数*)
用于linux之间的文件或目录的远程传输
语法
scp 【可选参数】 本地源文件 远程:/文件标记
scp 本地文件 远程用户名@远程ip:远程文件夹/ # 将文件复制过来
scp 本地文件 远程用户名@远程ip:远程文件夹/远程文件名 # 将文件复制过来,并重命名
scp -r 本地文件夹 远程用户名@远程ip:远程文件夹/ # 将本地文件夹(目录),复制到远程主机上
scp Python-3.6.6.tgz 192.168.1.189:/opt/ # 将文件拷贝到远程机器上
scp 192.168.1.189:/opt/Python-3.6.6.tgz . # 将远程机器上的文件拷贝到本地,注意接受路径:.
参数
-r :递归复制整个目录
-v:详细方式输出
-q:不显示传输进度条
-C:允许压缩
scp -v -r /opt 192.168.1.155:/tmp/
# 递归拷贝opt目录到远程服务器上(显示详细输出,如debug信息)
scp -r /opt 192.168.1.155:/tmp/ # 递归拷贝opt目录到远程服务器上
scp -C -r /opt 192.168.1.155:/tmp/ # 递归拷贝opt目录到远程服务器上,并压缩传输
2.16 du命令,用于显示目录或文件的大小(重要指数***)
du 【参数】【文件或目录】
-s 显示总计
-h 以k,M,G为单位显示,可读性强
df -h 查看磁盘大小, 和占用空间
# 显示/home的总大小
du -sh /home
2.17 top命令, 动态监视进程活动与系统负载等信息(重要指数*)
2.18 chattr与lsattr(重要指数***)
给文件加锁,只能追加数据,无法删除文件
chattr +a test.py
chattr -a test.py
查看文件隐藏属性(查看文件是否有锁,是否有a属性)
lsattr test.py
2.19 linux时间同步(重要指数***)
//手动修改时间
date 091117152019 # 0911表示月和日, 1715表示时分, 2019表示年份
//以系统时间为基准,修改硬件时间
[root@oldboy_python ~ 10:29:07]#hwclock -w
//以硬件时间为基准,修改系统时间
[root@oldboy_python ~ 10:29:21]#hwclock -s
ntp时间服务器同步
ntpdate -u ntp.aliyun.com
2.20 小知识点(重要指数**)
lrzsz工具包(可以提供linux服务器的上传和下载)
yum install lrzsz # 下载此工具包
rz # 上传文件
sz # 下载文件
2.21 上传下载命令(重要指数*)
wget命令用于在终端下载网络文件
参数是 wget [参数] 下载地址
wget -r -p http://www.luffycity.com
#递归下载路飞所有资源,保存到www.luffycity.com文件夹中
2.22 开关机命令(重要指数*)
reboot或init 6命令用于重启机器
poweroff或init 0用于关闭系统
3 VIM编辑器
3.1 vim编辑器工作原理
3.2 vim基本操作命令
重要的我会标为高亮,必须要会,其他的了解就可以
3.2.1 移动光标
w(e) 移动光标到下一个单词
b 移动到光标上一个单词
数字0 移动到本行开头
$ 移动光标到本行结尾
H 移动光标到屏幕首行
M 移动到光标到屏幕的中间一行
L 移动光标到屏幕的尾行
gg 移动光标到文档的首行
G 移动光标到文档尾行
ctrl + f 下一页
ctrl + b 上一页
`. 移动光标到上一次的修改行
3.2.2 查找
/tiger 在整篇文档中搜索tiger字符串,向下查找 ?tiger 在整篇文档中搜索tiger字符串,向上查找
查找到关键字之后:
n 表示查找下一个关键字
N 表示查找上一个关键字
查找整个文档,匹配光标所在的所有单词,按下n查找下一处,N上一处
查找整个文档,匹配光标所在的所有单词,按下n查找下一处,N上一处
gd 找到光标所在单词匹配的单词,并停留在非注释的第一个匹配上
% 找到括号的另一半!!
3.2.3. 复制粘贴删除命令
yy 拷贝光标所在行
nyy 拷贝以光标开始往下数n行内容
dd 删除光标所在行
D 删除当前光标到行尾的内容
dG 删除当前行到文档尾部的内容
p 粘贴yy所复制的内容
x 删除光标所在的前一个字符
del键 删除光标所在的字符
u 撤销上一步的操作
3.2.4 底线命令模式
:q! 强制退出
:wq! 强制写入退出
:set nu 显示行号
: set nonu 取消显示行号
:数字 调到数字那行
随时按下esc可以退出底线命令模式
博客地址:
总目录: https://www.cnblogs.com/tiger666/p/10239307.html
以上是关于Linux基础命令的主要内容,如果未能解决你的问题,请参考以下文章
markdown [Docker] Docker片段列表和命令#linux #docker #snippets
Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段