本文可作为尚学堂马士兵老师linux课程的学习笔记
ls
-l 详细打印信息
-m 所有项目以逗号分隔,并填满整行行宽
cd
pwd Print working directory
mkdir 新建文件
删除文件/文件夹
rmdir 删除文件夹(文件夹必须为空)
直接rm 不能删除非空目录
直接rm -f 没有提示直接删除文件
但是rm -f还是不能直接删除非空文件夹
rm -rf 直接删除文件或文件夹 r是recursive f是forse
cp 拷贝
cp 1.txt 2.txt 把1拷贝一份成2
mv 移动
vi
vi fileName 打开或新建文件
vi编辑器有两种模式
命令模式与编辑模式(刚进去的时候就是命令模式)
命令模式
dd 删除当前行
在命令模式敲a(append)可以进入编辑模式
在命令模式敲:后可以输入命令,下面的命令叫做行方式命令
vi的命令包括w----存盘
vi的命令包括q----退出
在编辑模式敲esc可以存盘,并且返回命令模式
more fileName 可以查看文件内容
http://blog.chinaunix.net/uid-664509-id-291877.html
查看文件
cat 查看文件
more 查看文件
head -3 fileName 查看文件的前3行
tail -3 fileName 查看文件的后3行
find
find /etc -name *local 在/etc目录下按照文件名查找所有以local结尾的文件
whereis
whereis ls 显示ls这个命令的信息
ln
ln 3.txt 4
把3.txt复制一份为4
但是修改3.txt后,在4上能看到变化
修改4后在3.txt上也能看到变化
但是删除了两个中的一个后,另一个并不会被删除。
ln 3.txt 4 叫硬连接
ln -s 3.txt 5叫软连接
上面的s不是soft,是symboilc
就是为3.txt新建一个叫5的快捷方式
那么删除了5,3.txt还是OK的
不过要是删除了3.txt,那么5就不能用了。
clear 清屏
用户
useradd testuser 增加一个叫testuser的用户
passwd testuser 为testuser设置密码(敲击命令后设置)
新建了testuser后,在/home下就有一个testuser这就是他的主目录
在etc/passwd中我们可以看到最后一行是我新建的用户
dlf:x:500:500:dlf:/home/dlf:/bin/bash
从上面的例子我们可以看到,/etc/passwd中一行记录对应着一个用户,每行记录又被冒号(:)分隔为7个字段,其格式和具体含义如下:
用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
口令被加密了所以就是一个x
shell
最后一个是登陆shell
还有bash都是什么意思呢?
linux最核心的就是内核了,我们写的命令例如ls呀rm呀并没有直接和内核打交道。
为什么?分层的思想懂不?
中间那层就是shell
shell也不是铁板一块,你有你的shell,我有我的shell
常见的就有cshell,kshell
有个叫Bourne的哥们写了一个shell叫bshell
后面觉得不好用,就有了个Bourne-Again Shell
就是bash
bash是大部分linux默认的shell
组
/etc/group里面存放的是用户的组信息
dlf:x:500:
dlf是组名 新加一个用户的时候,如果没有指定他是那个组的,那就新建一个和他的用户名同名的组,并把他加入
x是密码,当然是加密后的
500是组号
最后的:后面是组内成员
我可以新建一个组,然后在新建用户的时候 指定用户所在的组
useradd testUser -g myGroup
当然我也可以修改用户所属的组
usermod -g staff newuser2
删除用户
用大腿想想就是userdel username
删除用户后,home下面工作目录还得我们自己再删一遍
su 转移用户
su switch user
who am i
http://roclinux.cn/?p=1255
cat /proc/version 查看当前linux的版本
exit 退出当前terminal
logout 在图形界面启terminal后,敲击logout
logout bash: logout: not login shell: use `exit'
图形界面终端里面的shell不是登录shell,所以不能用logout退出,这能用exit关闭终端,用文字界面登录的shell才是登录shell,是可以用logout的。
命令帮助
command --help或者comman --?
再或者 man command
man是manual的简写
退出某个界面的时候,敲q (quit的简写)
文件权限
权限
[root@localhost bjsxt]。 ls -l
total 24
-rw-r--r-- 2 root root 12 Jan 6 21:56 3.txt
-rw-r--r-- 2 root root 12 Jan 6 21:56 4
lrwxrwxrwx 1 root root 5 Jan 6 21:56 5 -> 3.txt
-rw------- 1 root root 203 Aug 8 19:15 hello.java
-rw------- 1 root root 203 Aug 8 19:15 hello.java~
drwxr-xr-x 3 root root 4096 Jan 6 02:38 shandong
第一部分共有10位
第一位是d的代表这个文件是文件夹 d-directory
第一位是l的代表这是一个链接
第一位是-的代表这就是一个文件
后面的九位
每一位可以是四种 w,r,-和x
w 代表write
r 代表read
- 代表没有权限 none
x 代码execute 执行
分为3部分
第一部分 说的是用户的拥有者对此文件的权限
第二部分 说的与文件拥有者同组的用户对此文件的权限
第三部分 说的是其他用户对这个文件的权限
一共有9位,一个用户占有3位
三位的第一位只能是r或者-,第二位只能是w或者-,第三位就是x或者-
可以理解为linux为用户关于文件定的权限用3个位来表示
而-就是用来占位的
-rw-r--r-- 2 root root 12 Jan 6 21:56 3.txt
对3.txt这个文件来说
文件的拥护者 可读可写(第三位是-,表示none)
同组的可读
其他人可读
修改用户的权限
chmod +x 4.txt +-----增加权限 chmod---change mode
为4.txt的所有使用者加上x的权限 r与w类似
chmod u+r 4.txt u----user
为4.txt的使用者加入r的权限 w与x类似
chmod g+x 4.txt g----group
为4.txt的同组使用者加入x的权限 w与4类似
chmod o+x 4.txt o----other
为4.txt的其他使用者加入x的权限 w与4类似
上面的+是增加权限
-呢? 肯定就是取消权限喽
修改用户的权限2
chmod 755 4.txt
我们已经知道
权限一共有9位,一个用户占有3位
三位的第一位只能是r或者-,第二位只能是w或者-,第三位就是x或者-
如果三位里有r或者w或者x那么就是1 否则就是0
755换成二进制就是111101101
再换成权限就是rwxr-xr-x
修改文件的拥有者
chown testuser2 4.txt
4.txt的所有者就变成了textuser2