## 常用命令
打开终端:ctrl+ alt +t或者右键在终端中打开
退出终端:exit
切换到到管理员(#):sudo su
退出exit
ls: 一个可执行的二进制文件,可查看当前目录下的文件都有啥
ls -l查看文件类型(普通 管道 目录 套接字…)
ls -a :显示隐藏文件
touch 创建普通文件:touch a.c
mkdir 创建目录:mkdir tmp
cd:进入文件
cd~:进入家目录下用户的家
ldd:可执行文件使用了那些库文件
pwd:显示当前的位置
cd ..回到上一层
rm a.c 删除当前位置下的a.c文件
rm -f file.txt删除file.txt,不管是否找到都不报错
rm -r tmp删除文件夹
clear:清屏
cp 拷贝:cp a.c b.c (拷贝a,c文件存在b.c中)默认拷贝在当前位置
cp -r tmp tmp1(拷贝文件夹) 同上
man 1 命令 2 系统调用 3 库函数,
当用man查看时,会显示是1,2,3,1就是命令,2就是系统调用…,当有重名时,得用man 3 printf 来查看库函数printf ,因为printf既是库函数又是命令,直接查会显示printf命令。
man ls显示ls可以加的参数
cp file.txt tmp 将file.txt拷贝在tmp的文件夹中 cp file.txt tmp/a.txt 拷贝在tmp的文件夹里并改名为a.txt
cp /ect/passwd . 将根目录下的ect下的passwd拷贝在当前位置,.代表当前位置
mv 可以重命名和移动文件
mv a.c b.c将a.c改成b.c
mv b.c dir=mv b.c ./dir将b.c 移动到dir文件夹里,当前目录里得有dir 文件夹
mv b.c ..将b.c移到上层
mv b.c dir/a.c将b.c移到dir中,并且改名为a.c
cat 打印文件内容,向文件输入内容,合并文件
cat a.c 在屏幕上打印a.c的内容
cat > b.c在键盘中读数据并写入到b.c中,停止输入时ctrl+d
cat a.c b.c 可以打印两个文件的内容
cat a.c b.c >file.txt 将两个文件合并到file.txt
more 查看文件,优点是可以分屏幕显示,但只能查看一次
more passwd 显示在屏幕时只有一页,按空格翻页,回车键一行一行的向下
less passwd 查看文件内容,可以反复查看,方向键向下,退出Q
head passwd 默认情况下在屏幕上显示(打印)文件前10行
tail passwd打印末尾10行
head -3 passwd 显示前3行
head -3 passwd >file.txt将前3行打印在file.xt中
tail -2 passwd 将末尾两行打印出来
vi a.c打开文件后,处于命令模式,这时不能插入数据,必须用命令后才能插入数据。
vi 打开的文件,:q!不保存(强制)退出,:wq保存退出,:q没修改数据时退出
命令模式->插入模式:i,a,oI,A,O
转换模式时,用i,插入数据时将在显示在光标的前面
a在光标的后面插入
I在光标的行末插入
A在光标的行头插入
o在光标的下一行插入一行新的
O在光标的上一行插入新的一行
插入模式->命令模式:esc
命令模式->末行模式::
显示行号::set nu 回车用:先跳到最后一行
取消行号:set nonu
在文章末尾敲入/root在文件头部找含有root的地方,按n不行的跳转到下一次出现的地方,会循环找
?root是从文章末尾向前面找
nyy从所在的行开始复制n行,p就会将它粘贴(从光标所在的下一行开始),u将粘贴的撤销。恢复刚才撤销的ctrl+r
ndd剪切n行(从光标所在的行开始剪切),p粘贴(光标所在的下一行),u撤销,ctrl+r恢复刚才的撤销。
r替换一个字母,R替换字符串(按r,再输入改变后的字母),按esc结束替换字符串。
x删除一个字母
cc清除一行
shift+C将一行中光标到行末清空(包括光标所在位置)
G将光标跳到末尾
:n将光标移动到第n行
gg光标移到文本第一行
:1,n s /root/aaaa将root替换成aaaa在1到n行的每行中的第一个
:1,n s /root/aaaa/g将所有的root 替换成aaaa在1到n行
文件名必须为.tar.gz
tar cvf my.tar main.c passwd 将main.c和passwd建成名字为my.tra的包
tar xvf my.tar释放名字为my.tar的文件包,释放后my.tar还存在
gzip my.tra将my.tar进行压缩,压缩后名字为my.tar.gz
gzip -d my.tar.gz将my.tar.gz解压为文件包,再解压五年间包
tar zxvf my.tar.gz一步解压,以上所有的v都是代表显示解压的过程,可以无。
find /etc -name vimrc在etc下找名字为vimrc的文件
find /home/stu -name a.c(同上)
grep "root" passwd 将passwd文件中含有root的行打印出来
grep -i "hello" file大小写都打印
grep -c "hello" file计算文件含有hello的有多少行
grep -c -i "hello" file 计算文件含有hello的有多少行(包括大写的hello)
ls | grep "bash" ,这相当于将ls所找的文件当成一个文件存入管道|中,再用grep查找bash
ps -ef | grep"init" 在找到的进程中寻找init
shutdown -h now立刻关机,将now改为10就是10分钟后关机
shutdown -c取消关机
shutdown -r now 立刻重启
不想执行语句时ctrl+c结束
根目录下各个文件存放的文件bin:存放命令
boot:系统内核
cdrom:光驱,光盘
dev:存放设备文件(键盘,硬盘)
etc:配置文件,(记录系统的属性信息,配置信息)
lib:存放库文件(包含c标准库)
lost found:系统异常终止的文件
media:媒体文件
mnt:临时挂载点,方便在根目录下寻找其他不在根目录下的文件(可移动文件(硬盘)),创建一个mnt的文件,将它挂在根目录下,便可以用路径找到它。
tmp:用户都可以用的临时文件
var:聊天记录的数据存放的地方
proc:将进程在内存中运行的地方映射在根目录下
home:存放普通用户的家目录
root:普通管理员的家目录,
文件类型:
普通文件 (文档) -来表示
目录文件(文件夹)用d来表示
管道文件 p
设备文件 c,b
链接文件 l
套接字文件s
-rwxrwxr-x 1 stu stu 16464 9月 11 11:36 main
-代表文件类型 普通文件
1是链接数
rwx代表属性 第一个rwx是属主自己的权限(u),第二个是同组人的属性(g),o是其他人
r 读 4
w 写 2
x 执行权限 1
- 啥都没有 0
修改权限chmod:
chmod u-w main给属主去掉写的权限在main文件中
chmod g-w main给同组人去掉写的权限
stu代表属主
stu(第二个)代表同组人
16464 文件大小 后面的为创造的时间和文件名



