ls 列出当前目录下的内容
ls -a | //显示隐藏文件 |
---|---|
ls -l | //显示文件详细信息 |
touch ~/aa | //在主目录下创建文件(如果文件存在则更新创建时间) |
touch ~/.aa | //在主目录下创建隐藏文件 |
. | //代表当前目录 |
… | //代表上一级目录 |
cd ~ | //返回用户目录 |
cd / | //返回根目录 |
cd … | //返回上一级目录 |
cd - | //跳转到上一次打开的目录 |
echo | //打印 |
cat /etc/shells | //查看当前系统下有哪些shell |
echo $SHELL | //查看当前正在使用的shell |
ls -l 所展示的文件权限解释*
-rwxrwxrwx
第一个字符的意义:
- 普通文件
d 目录
l 符号链接
b 块设备文件
c 字符设备文件
s socket文件,网络套接字
p 管道
其余九个字符:
前三个:文件所有者权限; 中间三个:文件所有组权限; 最后三个:其他组权限
创建和删除目录***
mkdir a | 创建a目录 |
---|---|
mkdir a b c | 创建a,b,c目录 |
mkdir -p a/b/c | 创建包含关系的目录 |
tree | 查看当前目录结构 |
rmdir a | 删除空目录a(rmdir只能删除空目录) |
rm -r a | 递归的删除a目录 |
rm -rf a | 强制删除a目录(忽略提示信息) |
文件移动和重命名*** | |
mv file1 file2 | 把文件1重命名文件2 |
– | – |
mv a.c …/ | 移动到上一级 |
mv a.c …/aaaa.c | 移动到上一级并改名 |
mv …/a.c ./ | 上一级的a.c移动到当前目录 |
mv file1 -/ | 移动文件 |
拷贝文件和目录****
cp file1 file2 | 将文件1拷贝到文件2并改名为文件2 |
---|---|
cp file1 dir/ | 将文件拷贝到dir目录下 |
cp file1 …/ | 将文件拷贝到上一级目录 |
cp dir1 dir2 -r | 将目录1拷贝到目录2 |
cp dir1 ~/ -r | 将目录1拷贝到用户目录下 |
查看详细内容并输出到终端 | |
cat file1 | 查看文件1的详细内容 |
– | – |
cat | 等待用户输入,并将其输出到终端,ctrl+d结束输入 |
more file1 | 只显示一屏的内容,按回车一行一行显示,空格全部显示完 |
head -num file1 | 显示文件的前num行 |
tail -num file1 | 显示文件的最后num行 |
软链接硬链接****** | |
ln -s file1 file2 | 建立file2 与 file1 的软链接(符号链接) |
– | – |
ln file1 file2 | 建立file2 与 file1 的硬链接 |
计算文件Byte数,字数,列数****
wc file1 | 依次显示文件行数,单词数,字符数 |
---|---|
wc -l file1 | 只显示行数 |
wc -w file1 | 只显示words数 |
wc -c file1 | 只显示Bytes数 |
指定文件查看格式******
od -tc file1 | 以ASSCL码形式显示 |
---|---|
od -tcx file1 | 以ASSCL码和16进制显示 |
查看某个目录的大小**
du -dm | 以M显示当前所有目录的大小 |
---|---|
du -dk dir1 | 以k显示目录dir的大小 |
du -dk | 以K显示当前所有目录的大小 |
du -hb dir | 以K显示目录dir的大小 |
du -db | 以B显示当前所有目录的大小 |
du -hb dir | 以B显示目录dir的大小 |
查看磁盘使用情况
df --block=GB | 以GB形式显示 |
---|---|
df --block=MB | 以MB形式显示 |
df --block=KB | 以KB形式显示 |
***查看当前登录用户
whoami //显示当前登录用户
****改变文件权限
chmod [u/g/o/a][+/-][r/w/x] file1 | //文字设定法 |
---|---|
chmod [num][num][num] file1 | //数字设定法 |
sudo chown root:root | //改变文件所有者/所有组 |
**查看指定命令所在的路径
which ls //查看命令ls所在的路径
查找文件
|find ./ -name ".mp3" |按文件名查找./表示当前文件|
随后的是一个通配符表示所有文件,-name指定要找的文件名
""内部写文件名,.mp3指的是以mp3结尾的文件,有些文件
禁止普通用户访问,在前面加上sudo可以临时以超级用户身份访问
grep “string” ./ -R //按文件内容查找,“string”,string代表
文件内容, ./*表示当前目录下所有文件, -R表示递归地进行
整体意思:在当前目录下递归地寻找内容带有string的文件
-c //只输出匹配行的计数
-i //不区分大小写(只适用于单字符)
-h //查询多文件时不显示文件名
*挂载/卸载U盘
sud fdisk -l | 查看磁盘分区 |
---|---|
sudo mount /dev/sdb1 /mnt | 将U盘挂载到mnt目录下 |
sudo umount /mnt | 将U盘从mnt目录下卸载 |
注意:若目录下有文件,挂载U盘后目录的文件会被隐藏,当卸载U盘后
被隐藏的目录又会出现.
压缩包管理***
tar [主选项 + 辅选项] 文件或目录
主选项:
c : 创建新的档案文件
r : 把要存档的文件追加到档案文件的末尾
t : 列出档案文件的内容,查看已经备份了哪些文件
u : 更新文件,用新增的文件取代原备份文件
x : 从档案文件中释放文件( 常用 )
辅助选项:
f : 使用档案文件或设备,这个选项通常是必选的( 常用 )
k : 保存已经存在的文件
m : 在还原文件时,把所有文件的修改时间设定为现在
M : 创建多卷的档案文件,以便在几个磁盘中存放
v : 详细报告tar处理的文件信息,若无此选项,tar不报告文件信息( 常用 )
w : 每一步都要求确认
z : 用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,
但还原时也一定要使用该选项进行解压缩(常用)
j : 用bzip2来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,
但还原时也一定要使用该选项进行解压缩(常用)
tar cvf dir.tar dir | 创建一个归档文件 |
---|---|
tar xvf dir.tar | 还原一个归档文件 |
tar zcvf dir.tar.gz dir | 以gzip压缩dir |
tar zxvf dir.tar.gz | 以gzip解压缩dir.tar.gz |
tar jcvf dir.tar.gz2 dir | 以bzip2压缩dir |
tar jxvf dir.tar.gz2 | 以bzip2解压缩dir.tar.gz2 |
tar jxvf dir.tar.gz2 -C dir2 | 以bzip2解压缩dir.tar.gz2 到 dir2目录下 |
rar a -r newdir dir | 以rar压缩dir |
unrar x dir.rar | 以rar解压缩dir.rar |
zip -r newdir dir | 以zip压缩dir |
unzip dir.zip | 以zip解压缩dir.zip |
*****进程管理
who
[rt123@localhost aa]$ who
rt123 :0 2019-02-27 11:09 (:0)
rt123 pts/0 2019-02-27 11:14 (192.168.197.1)
rt123 pts/1 2019-02-27 15:55 (192.168.197.1)
用户名 终端号 开启时间
ps
PID TTY TIME CMD
7428 pts/1 00:00:01 bash
8536 pts/1 00:00:00 ps
进程号 终端号
ps aux
-w : 宽输出
a : 显示终端上所有进程,包括其他用户的进程
r : 只显示正在运行的进程
x : 显示没有控制终端的进程
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 2 0.0 0.0 0 0 ? S 12:16 0:00 [kthreadd]
用户 进程号 使用占比 使用的终端 进程运行
?表示无终端 状态(运行/睡眠)
jobs //显示后台的作业号
fg num //唤醒num号作业到前台执行
bg num //唤醒num号作业到后台执行 ,执行文件后+&意为到后台运行
kill -l //查看所有信号
共64个信号
kill -num 进程 //向进程发送num号信号
2 : SIGINT //中断信号
9 : SIGKILL //杀死进程信号
11 : SIGSEGV //段错误信号
18 : SIGCONT //继续信号
19 : SIGSTOP //暂停信号
env //查看当前进程环境变量
vim ~/.bashrc //配置当前用户环境变量
vim /etc/profile //配置系统环境变量
export:PATH=$PATH:新路径
source file.sh //执行file脚本里的内容
. file.sh //执行file脚本里的内容
他们二者都会把执行后的数据传递给shell父进程,如果直接执行file.sh
那么子进程结束后数据就被释放了
脚本固定格式:
{
#! /bin/sh
内容
}
用户管理**
sudo | 临时变为root用户 |
---|---|
su 用户名 | 切换用户 |
sudo su | 变为root用户 |
sudo userdel -r 用户名 | 删除用户 |
*网络管理
ifconfig | 查看网卡信息 |
---|---|
sudo ifconfig eth0 down | 关闭网卡 |
sudo ifconfig eth0 up | 开启网卡 |
sudo ifconfig eth0 IP | 给eth0配置临时IP |
ping 主机名/IP地址 | 查看网络上主机是否在工作 |
finger 用户名 | 显示用户详细信息 |
其他命令*
shift pageup | 终端上翻页 |
---|---|
shift pagedown | 终端下翻页 |
man | 查看手册 |
man 章节数 名称 | 查看第几章的什么东西(共有9章) |
clear | 清屏(ctrl + l) |
alias ls=‘ls --color=auto’ | 给ls起别名等号左边代替等号右边 |
alias rm=‘rm -i’ | 删除前询问是否要删除,(修改配置文件后需重启终端生效) |
echo [-n] 字符串 | 回显一个字符串 |
echo $变量名 | 回显变量 |
echo $? | 查看上一个程序的退出值 |
echo “abc” > abc.txt 重定向
| date |查看当前时间 |
| umask nnn |设置创建文件时的掩码,系统mode默认为666 |
| 计算权限公式 : mode & (~umask) ,最终得到数字即默认权限
ulimit -a 查看文件资源信息
cat /proc/sys/fs/file-max 查看当前系统可打开的最大文件数,与内存大小有直接关系
关机重启***
powerdown //断电
shutdown -t 秒数 [-rkhncfF] 时间 [警告讯息]
-t 秒数 : 设定在切换至不同runlevel之前,警告和删除二讯号之间的延迟时间
-k : 仅送出警告讯息文字,但不是真的要 shutdown
-r : shutdown 之后重启
-h : shutdown 之后关机
-n : 不经过init,由shutdown 指令本身来关机
-f : 重新开机时,跳过 fsck 指令,不检查档案系统
-F : 重新开机时 ,强迫做 fsck 检查
-c : 将已经在 shutdown 的动作取消
reboot //重启
uname -a //查看内核版本
lsb_release -a //查看发行版信息
free -m //查看内存
whoami
" | " 在Linux中被称为管道,管道可以连接左右两边的命令,协同合作使用
并将左边命令的结果作为右边命令的输入
服务器构建
1.安装vsftpd服务器
yum install vsftpd
2.配置vsftpd.config文件
sudo vim /etc/vsftpd.conf
3.添加设置
anonymous_enable=YES 允许匿名用户访问
anon_root=/home/rt123/ftp 匿名用户登录后所在根目录(服务器共享的目录)
no_anon_password=YES 匿名用户不需要输入密码
write_enable=YES 允许匿名用户写操作
anon_upload_enable=YES 允许匿名用户上传
anon_mkdir_enable=YES 允许匿名用户创建目录
4.重启服务器,重新加载/etc/vsftpd.conf配置文件
sudo /etc/init.d/vsftpd restart
5.进入你的/home/rt123/ftp目录下创建一个空目录,供用户上传
cd ~/ftp
mkdir anonymous
chmod 777 anonymous
6.测试上传功能,登录ftp服务器,进入anonymous目录
ftp IP
cd anonymous
7.上传/下载命令,可以把你当前目录下的文件上传到ftp服务器的anonymous目录或下载
put somefile
get somefile
目录命令: ls pwd mkdir rmdir rm cp mv cd
文件命令: touch cat tac more less head tail
压缩命令: zip/unzip gzip/gunzip bzip2/bunzip2 tar -cxvzjf
时间命令: cal dale
匹配查找命令: grep find
其他: man su | >> > bc
shell原理: 保护内核 , 用户与内核之间沟通的桥梁
权限: 系统操作的权限: 管理员/普通用户