1.Linux常用命令
1.1 ls查看当前路径下有什么
linux中有七种文件类型:
b:块设备文件(比如:U盘)
c:字符设备文件(比如:键盘、鼠标、串口)
d:目录文件
-:普通文件
1:链接文件(相当于windows系统下的快捷方式)
s:套接文件(网络通信)
p:管道文件(进程间通信)
1.1.1一个常用格式:ls -al(针对文件去说的)
出现内容依次是以下意义:
- 文件类型:文件类型是‘-’,表示这是一个普通文件
- 文件权限:rwxr-xr-x表示文件可读、可写、可执行,文件所归属的用户组可读可执行,其他用户可读可执行
- 硬链接个数:表示a.txt这个文件没有其他的硬链接,因为链接数是1,就是他本身
- 文件属人:表示这个文件所属的用户,这里的意思是a.txt文件被root用户拥有,是第一个root
- 文件属组:表示这个文件所属的用户组,这里表示a.txt文件属于root用户组,是第二个root
- 文件大小:文件大小是3字节
- 文件修改时间:这里的时间是该文件最后被更新(包括文件创建、内容更新、文件名更新等)的时间可用如下命令查看文件的修改、访问、创建时
权限类型 | 应用于目录 | 应用于任何其它类型的文件 |
---|---|---|
读(r) | 授予读取目录或子目录内容的权限 | 授予查看文件的权限 |
写(w) | 授予创建、修改或删除文件或子目录的权限 | 授予写入权限,允许修改文件 |
执行(x) | 授予进入目录的权限 | 允许用户运行程序 |
无权限(-) | 无权限 | 无权限 |
如 -rw-r--r-- 1 linux linux 8980 May 5 2018 examples.desktop
-rw-r--r--表示文件类型和权限
第一个字母代表文件类型
第一个-代表普通文件 如第一个是d表示文件夹
1表示链接文件的链接数
第一个linux是当前文件属于什么用户
第二个linux是用户组 (root超级用户)
之后是文件大小和最后保存时间
***三个组表示文件的权限(如-rwxrwxr-x)
第一组rwx 表示当前用户对当前文件的权限
第二组rwx 表示当前用户所在管理组里面 这个组对文件的操作权限
第三组r-x 当前用户所在组里面其他用户对这个文件的操作权限
横杠是占位无意义
***用命令去配置文件权限时,r w x可以用数值代替,依次对应4、2、1数值。
如-rwxrwxr-x 775
命令 chmod
如-rw-rw-r-- 改为可读可写可执行
1.1.2 ls -R 展示当前路径所有文件,并把文件夹的内容也展示出来,迭代依次展示。
ls -a ls展示信息 -a把所有文件都展示出来 以 . 开头的是隐含文件
-l:展示文件信息 -a:把所有文件都展示出来(包括隐藏)
1.2 cd 打开指定的文件夹
. 当前路径
.. 上级路径 (../)
cd / 改密码用:passwd
cd ~ 自己改权限:chmod
cd.
cd ..
1.3 pwb 知道一下当前在什么路径下 (家目录如/home/linux 他是一个路径 第一个/为根文件夹)
相对路径:./ (相对于当前的路径 从当前路径开始数的)
绝对路径:/home/linux/
sudo -i 切换超级用户root,exit退出超级用户回到当前系统登陆的普通用户
注意不要在根目录下实践,在家目录下编程;一个是不安全,一个是好多操作权限限制。
#超级用户
$普通用户
1.4 touch 创建普通文件
c语言源码格式 xxx.c
1.5 mkdir 创建文件夹
创建文件夹不要加.c这类特殊后缀
1.6 cp 复制
注意使用正确路径,以防万一最好使用绝对路径
cp -i 覆盖文件之前先询问用户
cp -f 强行复制文件或目录,不论目的文件或目录是否已经存在
cp -l 或--link 对源文件建立硬链接,而非复制文件
cp -p 保留源文件或目录的属性,包括所有者、所属组、权限与时间
cp -r 复制一个文件夹
1.7mv 移动\改名字
mv 跨文件移动文件夹 如 mv ./dd/bool.c . 或 mv ~/dd/bool.c . 或 mv /home/linux/dd/bool.c .
.当前路径
-i: 交互式操作。 如果mv操作将导致对已存在的目录文件的覆盖,此时系统会询问是否覆盖,用户输入‘y进行覆盖,输入‘n'则不覆盖,这样可以避免误覆盖文件。
-b: 覆盖文件前先对其进行备份
mv 要移动的文件 要移动的位置
mv 要改名字的文件 要改的新文件名字
(如果是跨路径移动或者改名字,要用加上绝对路径或者相对路径,保证正确)
1.8 rm 删除 (无法复原的永久删除)
rm -i xxx 删除xxx文件前,提示一些信息提醒用户
rm -I xxx 大写i,删除xxx文件夹,提示的信息会比i少一些
rm -f 强制删除。忽略不存在的文件,不提示确认。
rm -r xxx 删除xxx文件
rm -Ir xxx 删除xxx文件夹,提示一些信息提醒用户
***如果普通用户用命令执行时提示权限不够,是因为文件本身设置的权限太高,需要超级用户来操作,可以在命令前加sudo获取一次超级用户权限
sudo rm -rf/* 强制删除了当前系统的所有文件,包括系统文件,系统都会崩溃。
******如何输出“hello world!”