Linux常用命令
Posted HUTEROX
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux常用命令相关的知识,希望对你有一定的参考价值。
文章目录
用户相关指令
用户创建
在Linux当中用户分为两大类一个是普通用户,另一个是有更高权限的给管理员用户,其中等级最高的是默认的ROOT用户。所有的软件的安装都需要有足够的权限,换一句话说普通用户在安装软件时都需要使用sudo命令来获取权限
useradd 命令创建用户
参数:
-m 创建home目录(在Ubuntu当中加入此参数创建,在Centos当中则不需要,会默认)
-M 不创建home目录
-s 指定shell解析脚本
示例:
useradd huterox -m -s /bin/bash
用户删除
userdel 删除用户
参数:
-r 删除用户的同时删除home目录
-f 强制删除
示例:
useradd huterox
useradd -rf huterox
密码修改
passwd username
当不指定username的时候,会修改当前用户的密码
whoami 命令查看当前用户是谁
pwd 命令查看当前所在目录
用户组的操作
组是可以更好的管理用户,给予用户相应的权限。在创建用户时,会自动创建用户组。
groups username 查看当前用户所在组
<用户名> <组名>
添加组
gpasswd -a <组名> <用户名>
gpasswd -a huterox boy
删除
gpasswd -d <组名> <用户名>
gpasswd -d huterox boy
高权限用户
在很多适合我们需要另一个和ROOT一样具有足够权限的用户,因此我们需要提高用户的权限。这些过程需要使用ROOT用户或者与之有一样权限的用户才能操作。
一.添加用户组
将普通用户添加入具有高权限的用户组。
修改sudoers文件添加用户
在Centos也Ubuntu当中有所区别的是,Ubuntu所添加的组为sudo
gpasswd -a huterox root(centos)
gpasswd -a huterox sudo(ubuntu)
特殊用户目录
/etc/passwd 查看用户名
/etc/shadow 查看用户密码(已加密)
软件安装
apt&yum自动安装
在Ubuntu是使用apt源进行安装而centos是yum,用法都类似
apt
apt install 包 下载与安装
apt search 包 搜索仓库是否有这个包
apt info 包 查看包的信息
apt remove 包 卸载包
apt autoremove 自动卸载
apt list --installed 列出已安装
--upgradeable 可更新
apt update 包,不加包全部检查 检查更新,但是不跟新
apt upgrade 包,不加包全部检查 检查并更新
yum
yum install 包 下载与安装
yum search 包 搜索仓库是否有这个包
yum info 包 查看包的信息
yum remove 包 卸载包
yum autoremove 自动卸载
apt list installed 列出已安装
upgradeable 可更新
yum update 包,不加包全部检查 检查更新,但是不跟新
yum upgrade 包,不加包全部检查 检查并更新
手动安装
手动安装需要先下载到源文件,之后进行编译安装,配置环境变量。下面以安装python3 为例子
一.到官方下载包
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
二.解压
tar -zxvf Python-3.7.0.tgz
三.进入文件
cd Python-3.7.0/
四.指定目录安装(启动优化,指定在usr目录下安装,指定ssl)
./configure --enable-optimizations --prefix=/usr/local/python3.7/ --with-ssl-default-suites=openssl
五.构建安装
make & make install
最后一步配置环境变量
环境变量配置
Ubuntu
1.修改 /etc/bash.bashrc文件或者/etc/profile(相当于系统环境变量win)
如果没有PATH选项的化安装这个添加,如果有那么直接在PATH后面添加 :目录 ```
2.直接修改当前用户下的.bashrc文件(相当于用户变量) 按照刚刚的方式添加
Centos
和上面的一致但是修改 /etc/bash_profile 或者 ~/.bash_profile
变量生效
要么重启
要么使用source执行文件,例如:
source .bash_profile
文件权限
首先使用chmod修改文件权限
r 读的权限 4
w 写的权限 2
x 执行权限 1文件权限显示
下面是一个例子
修改文件执行权限> chmod a+x hello.txt > chmod a=wrx hello.txt > chmod 777 hello.txt > chmod 774 hello.txt
VIM编辑器的简单使用
命令模式
按下ESC 切换为命令模式
dd 删除一行 ndd删除n行
u 撤销
ctrl + r 反撤销
yy赋值一行 nyy赋值n行(往下复制)
p 粘贴
G 定位最后一行
0 行首
end 行尾
x删除光标右边的一个文字 nx删除n个
X删除左边的 nX删除n个
shift +z +z 保存退出
底线命令模式
在命令模式下按下:进入
w 保存修改
q 退出
q! 不保存强行退出
wq 保存退出
e! 放弃修改
n 光标定位到n行
/x 查找x(从上往下找)
?x 查找x(从下往上)
查找替换
查看此命令:1,100/0/100/cige
解析:从1,到100行查找0替换为100(1,100/0/100)
c:是否确定修改
i:忽略大小写
g:全局模式当同一行出现多个符合情况的匹配项是
e:忽略报错
(/cige)
编辑模式
同样需要先切换为命令模式
i:进入插入模式
I:在第一个非空字符下插入
a:在光标右边插入
A:在光标所在行行尾插入
s:删除光标所在位置的文字插入
S:删除所在行插入
o:光标所在行下一行
O:上一行
宏操作
- 回到命令模式
- 按下q+其他按键例如按下 q + a
- 此时出现recoding的字样表明正在录制
- 开始录制
- 按下q结束录制
播放宏
n@a
n(执行次数,从上往下)
@a (执行在a里面保存的录制操作)
多文件操作
vim 文件1 文件2
底线命令模式下
:ls查看文件
:b n 切换第几个
`
:vs 垂直显示
:sp 水平显示
crtl + w +w 切换文件(也可以)
查找&过滤
find 查找
man find 查看手册
常用参数如下:
-name 按照名字来找
-size +10M 找大于10mb的文件(-10M小于的)
-ctime 0 当天创建的
-mtime 0 当天修改的(1一天前修改的)
-atime 最后访问时间
-type 文件类型(d f l …)
使用例子:
find 目录 -name "*.html"
在目录下寻找html文件
find ~/ -iname "*.html"|grep a
在用户目录下忽略大小写按照名字寻找html文件将信息过滤含有文件名含有字母a的html文件
find与其他命令配合
命令格式
find 目录 模式(-name...) 查找内容 -exec 命令 {} \\;
{}为每次寻找到的结果
\\;是为了闭合命令,必须要加
示例:
find ~ -name "*.html" -exec cp -f {} /html/ \\;
grep
管道过滤
主要是对结果进行过滤常常与许多命令配合使用
grep 目标 文件
或者 xx命令|grep 目标
grep hello hello.txt在hello文件里面寻找hello
grep -E "\\<\\/?Script\\>" index.html
-E支持正则
常用远程命令
ssh远程连接
ssh username@IP
scp远程安全拷贝
scp /home/hello.txt username@IP:/home/
将本地的hello文件拷贝到另一个服务器(或者用户)的home目录下
sftp安全文件操作
1.连接目标
sftp username@IP
此时命令分为两大类
l+命令表示本地操作命令
反之为远程主机的操作命令
get hello.txt /home/
将远程主机的hello文件下载在home目录下
(get hello.txt 下载到当前目录下)
put hello.txt 上传
put hello.txt /home/ 上次到远程主机的home目录下
man文档查看
更多操作命令可以使用
man + 命令查看
例如:
man ls
man scp
按下crtl+z关闭
以上是关于Linux常用命令的主要内容,如果未能解决你的问题,请参考以下文章
markdown [Docker] Docker片段列表和命令#linux #docker #snippets
Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段