cd: change directory
家目录,主目录, home directory
cd ~USERNAME: 进入指定用户的家目录
cd -:在当前目录和前一次所在的目录之间来回切换
: 显示指定属于哪种类型
命令类型:
内置命令(shell内置),内部,内建 cd is a shell builtin
外部命令:在文件系统的某个路径下有一个与命令名称相应的可执行文件 ls is aliased to `ls –color=auto’
printenv 打印环境变量
pwd 列出当前工作目录 也就是当前目录
touch 创建文件 如果文件存在 修改时间 不存在则创建
mkdir 创建目录 -p 递归创建
rm 删除文件或目录 删除之后是不能恢复的
rm -r 删除目录 可以递归删除 -f 忽略所有提示
man command 查看命令手册
command –help 查看命令手册
例如man ls ls –help
tree 查看目录树状结构 使用之前需要先安装tree yum install tree
-d只显示目录
cp 复制文件和目录
cp 源文件 目标文件/目标目录(文件名不改变)
-i 提示
-r 复制目录 目录操作不管是cp 还是rm 都必须加上 -r 这个选项
mv 移动文件夹 /重命名文件/文件夹(同目录,且目标目录不存在该文件)
mv 原文件 目标文件
-i 提示
注意 如果文件已存在 那么文件内容就丢了 文件夹就不存在这个情况
查看文件命令
cat 将所有内容展示
-b 对非空行编号 -n 对所有行编号 这俩参数centos貌似没用
more 分页展示文件内容 使用空格查看下一页 enter 下一行 b回滚一屏 f下一屏 /word 搜索word字符串
grep 搜索 grep 搜索内容 文件
-n 搜索内容并显示行号 grep -n “hello” **.txt
-i 忽略大小写匹配
-v 搜索不包含搜索内容并显示行号 grep -n “hello” **.txt
^a 搜索以a打头的内容 ke$ 搜索ke结尾的内容
echo 打印输入的值
重定向 > 将执行的结果写入文件(会自动创建文件,覆盖原内容) >> 将执行的结果追加写入文件
echo hello world >a.txt
echo hello world >>a.txt
ls -l >>a.txt
tree >>a.txt
管道 |
将一个命令的输出作为另一个命令的输入
ls | grep wechat.py
远程管理
shutdown 不指定参数 一分钟后关机 shutdown -c 终止关机 在关机之前执行 shutdown now 立即关机 shutdown +10 10分钟之后关机 shutdown 18:00 指定时间点关机
-r 重启 操作虚拟机一定要加上 -r 特别是79.97 那个机器
网卡信息
ifconfig 查看网卡配置 阿里这个命令看到的是内网。。。
ping
阿里云查看外网 curl ifconfig.me curl cip.cc
命令前加上sudo表示以超级管理员执行
远程登陆/复制
ssh [-p 端口] user@ip
scp
本地复制到远程机器
scp [-P 22] toptxt root@[0.0.0.0]:/usr/local 注意这个冒号
如果要复制文件夹 还是必须加上 -r 和cp、mv一样的 -P指定端口用的
远程机器复制到本地
scp root@[0.0.0.0]:/usr/local/top.txt top.txt
chmod
chmod -/+rwx top.txt 修改权限
组管理
groupadd ** 添加组
cat /etc/group 查看组信息
groupdel liupan 删除组
chgrp -R ** grouptest/ 修改组 chgrp -R 组 文件夹/文件
用户管理
useradd -m -g 所属组 用户名
useradd -m -g develop * 添加用户
-m 自动创建家目录
-g 设置用户所属的组,如果不设置会创建和用户名一样的组
passwd * 为用户设置密码
创建用户必须使用上述命令组合 先创建用户 在设置密码
userdel -r * 删除用户
-r 自动删除home下创建的目录
cat /etc/passwd | grep * 查看创建的用户,创建的用户都保存在/etc/passwd下
id * 查看用户的组代号和用户代号
或者
**who** 查看所有登陆的用户
**whoami** 查看当前登陆用户
**usermod** 修改用户的组/附加组 可以获得其他组的权限 重新登陆生效
-g 修改主组
-G 修改附加组
usermod -g/G 组 用户名
usermod -s /bin/bash 用户名 指定用户使用的shell
which 查看命令所在的位置
which ls
su 切换用户
exit 退出当前用户
修改文件权限
chown 修改文件拥有者
chown 用户名 文件名|目录名
chgrp 修改组
chgrp -R 组名 文件名|目录名
-R 递归修改目录及子目录
chmod 修改文件权限
chmod -R 755 文件名|目录名
chmod -/+rwx 文件名|目录名 不能具体到用户、组、其他用户
日期相关
date 打印当前日期
cal 打印当月日历
-y 打印当年的日历
磁盘相关
df -h 显示磁盘剩余空间
du -h [文件名] 显示文件占用大小 如果不加目录名会打印当前目录文件使用情况
进程相关
ps -axu 查看进程的详细情况 可以不加 –
a 显示终端所有进程,包含其他用户的进程
u 显示进程的详细状态
x 显示没有控制的终端进程 一般不用
查找文件
find [文件夹] -name “we*.py” 如果文件夹不指定 则默认查找当前目录 支持通配
find /usr -name “we*.py”
连接 就是windows 的快捷方式
ln [operate] 源文件 目标连接
ln -s /usr/local/01.py 01.py
创建软连接的时候要用绝对路径 这样创建的连接随便移动都没事 直接用python执行软连接也可以
删除的话直接用 rm 即可
-s 创建的是软连接(常用)
如果使用硬链接 删除源文件的时候 仍然可用
压缩解压
打包和解包 如果不添加z参数不会压缩和解压
tar -cvf 打包后的文件名 被打包的路径
tar -cvf apache_tomcat.tar.gz apache-tomcat-7.0.70
c 创建打包文件
v 显示进度
f 后边一定是压缩文件 必须放到最后
解压
tar -xvf 压缩文件
x 解开文件
增加z选项可以实现解压和压缩 相当于是tar和gzip的组合 适合后缀为 .tar.gz文件的解压和压缩
tar -zxvf tar -zcvf
增加-C可以解压缩到指定目录
tar -zcvf 压缩文件 -C 目录(这个目录必须存在)
增加j选项可以实现解压和压缩 相当于是tar和bzip2的组合 适合后缀为 .tar.bz2文件的解压和压缩
tar -jxvf tar -jcvf