Linux基本命令

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原理: 保护内核 , 用户与内核之间沟通的桥梁
权限: 系统操作的权限: 管理员/普通用户

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值