cd xxx:进入到某个目录
cd ..:回退到上一级目录
cd ~:用户家目录
cd -:上一次所在目录,可来回切换
pwd:打印当前文件目录路径
table 补齐
ctrl + a : 光标移动到最前
ctrl + e:光标移动到最后
ctrl + u:清空
上,下键:切换命令
清空命令行:reset
文件操作:
显示列表
ls -l
ls -la 显示所有文件
ls -l ja* *是通配符查找
创建文件
touch today.c
创建文件夹
mkdir setting
复制文件
cp src.txt dest.txt
cp -i src.txt dest.txt
cp src.txt . 复制到当前目录
删除文件
rm 文件
递归删除目录
rm -rf 目录
查看文件类型
file 文件
查看文件内容:
cat file
cat -n file 显示行号
查看文件最后10行
tail -n file n代表行数
查看文件最开始10行
head -n file n代表行数
查看文件
more file 查看文件内容并显示当前进度,按enter键翻页
less file 少量显示文件内容,按上下键翻页浏览
切换用户
sudo su root 切换用户
exit 退出当前用户
whoami 查看当前用户
创建用户
sudo useradd -m jack 创建用户的同时,创建了home目录
sudo userdel -r jack 删除用户
passwd 修改密码
创建组
groupadd 组名
分配用户到组
usermod -G 组名 jack
删除组
groupdel 组名 jack
文件权限
r读 w写 x执行
drwxr-xr-x
d rwx r-x r-x
d目录
1.文件所属用户具备的权限(root对该文件具备读写执行权限)
2.文件所属用户的所属组具备的权限(读、执行)
3.系统的其他用户具备的权限(读、执行)
rwx必须是固定顺序
权限 二进制 八进制
--- 000 0
--x 001 1
-w- 010 2
-wx 011 3
r-- 100 4
r-x 101 5
rw- 110 6
rwx 111 7
目录 用户权限 所在组其他用户权限 其他用户权限
d rwx rwx rwx
修改文件权限
chmod 664 file
给文件的用户权限加上执行权限
chmod u+x file
给文件的用户权限减去执行权限
chmod u-x file
给文件的组其他用户加上执行权限
chmod g+x file
给文件的组其他用户减去执行权限
chmod g-x file
给文件的其他用户加上执行权限
chmod o+x file
给文件的其他用户减去执行权限
chmod o-x file
给文件加上/减去所有用户读写执行权限
chmod a+/-rwx file
chown user:group filename #更改文件的属主和属组
chown user filename #更改文件的属主
chown :group filename #更改文件的属组
搜索查找
find 命令找文件
find ./ type 文件类型(递归)
find ./ -name '.so' : 根据文件类型去查找
find ./ -maxdepth 1 -name '.so'
-maxdepth 1 :递归的层级
grep 命令找内容
grep -r 'framework' : 找文件内容
ps aux 类似于任务管理器,查找当前所有运行的进程
ps aux | grep ubuntu : 找到了所有的任务,交给 grep 去执行搜索 , | : 管道 (进程间的通信),如果只有一个代表没有找到,两个以上才算有
软件安装
命令行安装:
- 指定国内的服务器(界面操作)
- 更新服务器的下载配置
sudo apt-get update - 敲安装命令
sudo apt install tree
sudo apt-get remove tree:软件的卸载
压缩
tar -zcvf test.tar.zip 文件列表
-zcvf z:gzip , c: crate f: file v:显示过程
tar -jcvf test.tar.zip 文件列表 j代表用 bzip2 方式
解压
gunzip 压缩文件
tar -zxvf test.tar.zip x代表解压缩
rar 和 zip
rar 文件列表 -r test.rar :rar 压缩
unrar x test.rar :rar 解压缩
zip -r test.zip 文件列表 :zip 压缩
unzip test.zip :zip解压缩
打印输出
echo
!/bin/bash
NDK=10
text="i love shell"
命令的执行结果的输出作为变量的值
text1=date
text2=$(who)
echo text
echo "NDK"
echo text2
命令执行退出的状态:
0 成功
127 没有找到命令
1 未知错误
126 命令不可执行
只有if命令的退出状态码为0,才会执行then部分
if 命令
then
命令
fi
test数值比较
-gt 大于
-eq 等于
-le 小于
-ne 不等于
test字符串比较
str1 == str2
str1 != str2
str1 < str2
-n str1 长度是否非0
-z str1 长度是否为0
文件比较
-d 检查是否存在,并且是一个目录
-e 检查file是否存在
-f 检查是否存在,并且是一个文件
-r 检查是否存在,并且可读
-w、-x
file1 -nt file2 file1比file2新
file1 -ot file2 file1比file2旧
case命令
case 变量 in
pattern1) 命令;;
pattern2) 命令;;
*) 默认命令;;
esac
for命令
for var in list
do
命令
done
while命令
while test command
do
命令
done
shell脚本退出保存
esc -> :wq!
网友评论