1. 基础快捷键使用
ctrl + c:停止进程
ctrl + l:清屏
ctrl + r:搜索历史命令
ctrl + q:退出
2.常用目录或文件夹命令
说明:安装linux时,创建一个itcast用户,然后使用root用户登陆系统
1.进入到用户根目录
cd ~ 或 cd
2.查看当前所在目录
pwd
3.进入到itcast用户根目录
cd ~itcast
4.返回到原来目录
cd -
5.返回到上一级目录
cd ..
6.查看itcast用户根目录下的所有文件
-a是显式隐藏文件 -l是以更详细的列表形式显示
ls -la
7.在根目录下创建一个itcast的文件夹
mkdir /itcast
8.在/itcast目录下创建src和WebRoot两个文件夹
分别创建:mkdir /itcast/src
mkdir /itcast/WebRoot
同时创建:mkdir /itcast/{src,WebRoot}
9.文件夹权限说明
ls -ld /tmp
drwxrwxrwt的权限值是1777
3.文件命令
1.查看文件详情
stat a.txt
2.移动
mv a.txt /ect/
改名
mv b.txt a.txt
移动并改名
mv a.txt ../b.txt
3.拷贝并改名
cp a.txt /etc/b.txt
4.vi撤销修改
ctrl + u (undo)
恢复
ctrl + r (redo)
5.使用>创建一个struts.xml
> struts.xml
6.使用touch创建多个文件
touch a.txt b.txt
touch /home/{a.txt,b.txt}
7.使用echo创建文件
在/itcast目录下面创建一个test.txt文件,同时写入内容"this is test"
echo "this is test" > test.txt
向README文件追加写入"please read me first"
echo "please read me first" >> README
8.使用cat复制文件内容
将一个文件的内容复制到里另一个文件中
cat a.txt > b.txt
追加内容
cat a.txt >> b.txt
注意:>、touch、echo以及cat对文件操作的比较
①>只能创建单个文件;
②touch可以创建单个或多个文件,无法向文件插入内容;
③echo创建文件的同时并向文件插入一行字符串,操作的是单行字符串;
④cat创建文件的同时并向新文件插入别的文件里的全部内容,操作的是整个文件。
9.查看一下test.txt的内容
cat test.txt
more test.txt
less test.txt
注意:more或less为分页查看
10.cp拷贝特定文件
将所有的java语言程式拷贝至finished子目录中:
cp *.java finished
11.rm删除特定文件
删除当前目录下扩展名是java的文件
rm -f *.java
删除空目录
rmdir
12.wc统计文件
查看一下README文件有多单词,多少个少行
wc -w README
wc -l README
13.vi编辑文件内容
vi somefile.txt
① 首先会进入“一般模式”,此模式只接受各种快捷键,不能编辑文件内容
② 按i键,就会从一般模式进入编辑模式,此模式下,敲入的都是文件内容
③ 编辑完成之后,按Esc键退出编辑模式,回到一般模式;
④ 再按:,进入“底行命令模式”,输入wq命令,回车即可
一些有用的快捷键(在一般模式下使用):
a 在光标后一位开始插入
A 在该行的最后插入
I 在该行的最前面插入
gg 直接跳到文件的首行
G 直接跳到文件的末行
dd 删除行,如果 5dd ,则一次性删除光标后的5行
yy 复制当前行, 复制多行,则 3yy,则复制当前行附近的3行
p 粘贴
v 进入字符选择模式,选择完成后,按y复制,按p粘贴
ctrl+v 进入块选择模式,选择完成后,按y复制,按p粘贴
shift+v 进入行选择模式,选择完成后,按y复制,按p粘贴
查找并替换(在底行命令模式中输入)
%s/sad/88888888888888 效果:查找文件中所有sad,替换为88888888888888
/you 效果:查找文件中出现的you,并定位到第一个找到的地方,按n可以定位到下一个匹配位置(按N定位到上一个)
4.文件与文件夹权限命令
1.linux文件权限的描述格式解读
drwxr-xr-x (也可以用十进制表示 755)
d:标识节点类型(d:文件夹 -:文件 l:链接)
r:可读 w:可写 x:可执行
第一组rwx: 表示这个文件的拥有者对它的权限:可读可写可执行
第二组r-x: 表示这个文件的所属组对它的权限:可读,不可写,可执行
第三组r-x: 表示这个文件的其他用户(相对于上面两类用户)对它的权限:可读,不可写,可执行
2.授予拥有者u、所属组g 以及其他用户o 对文件的权限
chmod ug+w,o-w a.txt b.txt 表示将a.txt、b.txt设为其拥有者和所在组可写入,但其他以外的人则不可写入
chmod a+wx c.txt 表示将c.txt文件设为所有人都可以写和执行
chmod -R a+r /itcast 表示将/itcast目录下的所有文件与子目录皆设为任何人可读取
chmod g-rw haha.dat 表示将haha.dat对所属组的rw权限取消
chmod o-rw haha.dat 表示将haha.dat对其他人的rw权限取消
5.设置用户和用户组
将/itcast目录下的所有文件与子目录的拥有者设为root,用户拥有组为users
chown -R root:users /itcast
将当前目录下的所有文件与子目录的用户皆设为itcast,组设为users
chown -R itcast:users *
注意:-R表示递归执行,在文件和目录上递归执行
5.查找命令
1.查找可执行的命令
which ls
2.查找可执行的命令和帮助的位置
whereis ls
3.查找文件(需要更新库:updatedb)
locate hadoop.txt
4.从某个文件夹开始查找
find / -name "hadooop*"
find / -name "hadooop*" -ls
5.查找并删除
find / -name "hadooop*" -ok rm {} \;
find / -name "hadooop*" -exec rm {} \;
6.查找用户为hadoop的文件
find /usr -user hadoop -ls
7.查找用户为hadoop并且(-a)拥有组为root的文件
find /usr -user hadoop -a -group root -ls
8.查找用户为hadoop或者(-o)拥有组为root并且是文件夹类型的文件
find /usr -user hadoop -o -group root -a -type d
9.查找权限为777的文件
find / -perm -777 -type d -ls
10.显示命令历史
history
11.grep
grep hadoop /etc/password
6.打包与压缩
1.gzip解压缩
压缩
gzip a.txt
解压
gunzip a.txt.gz
gzip -d a.txt.gz
2.bzip2解压缩
压缩
bzip2 a
解压
bunzip2 a.bz2
bzip2 -d a.bz2
3.tar解压缩
将当前目录的文件打包压缩
tar -cvf bak.tar .
将/etc/password追加文件到bak.tar中(r)
tar -rvf bak.tar /etc/password
解压
tar -xvf bak.tar
4.tar.gz解压缩
打包并压缩gzip
tar -zcvf a.tar.gz
解压缩
tar -zxvf a.tar.gz
解压到/usr/下
tar -zxvf a.tar.gz -C /usr
查看压缩包内容
tar -ztvf a.tar.gz
5.tar.bz2解压缩
打包并压缩成bz2
tar -jcvf a.tar.bz2
解压bz2
tar -jxvf a.tar.bz2
6.zip解压缩
zip/unzip
7.正则表达式命令
1.查找并用cut分割截取
cut截取以:分割保留第七段
grep hadoop /etc/passwd | cut -d: -f7
2.排序sort
du | sort -n
3.查询不包含hadoop的
grep -v hadoop /etc/passwd
4.正则表达包含hadoop
grep ‘hadoop‘ /etc/passwd
5.正则表达(点代表任意一个字符)
grep ‘h.*p‘ /etc/passwd
6.正则表达以hadoop开头
grep ‘^hadoop‘ /etc/passwd
7.正则表达以hadoop结尾
grep ‘hadoop$‘ /etc/passwd
规则:
. : 任意一个字符
a* : 任意多个a(零个或多个a)
a? : 零个或一个a
a+ : 一个或多个a
.* : 任意多个任意字符
\. : 转义.
\<h.*p\> :以h开头,p结尾的一个单词
o\{2\} : o重复两次
grep ‘^i.\{18\}n$‘ /usr/share/dict/words
查找不是以#开头的行
grep -v ‘^#‘ a.txt | grep -v ‘^$‘
以h或r开头的
grep ‘^[hr]‘ /etc/passwd
不是以h和r开头的
grep ‘^[^hr]‘ /etc/passwd
不是以h到r开头的
grep ‘^[^h-r]‘ /etc/passwd
8.输入输出重定向及管道
1.新建一个文件
touch a.txt
> b.txt
2.错误重定向: 2>
find /etc -name zhaoxing.txt 2> error.txt
3.将正确或错误的信息都输入到log.txt中
find /etc -name passwd > /tmp/log.txt 2>&1
find /etc -name passwd &> /tmp/log.txt
4.追加 >>
5.将小写转为大写(输入重定向)
tr "a-z" "A-Z" < /etc/passwd
6.自动创建文件
cat > log.txt << EXIT
> ccc
> ddd
> EXI
7.查看/etc下的文件有多少个
ls -l /etc/ | grep ‘^d‘ | wc -l
8.查看/etc下的文件有多少个,并将文件详情输入到result.txt中
ls -l /etc/ | grep ‘^d‘ | tee result.txt | wc -l
9.用户和组命令
1. 添加一个tom用户,设置它属于users组,并添加注释信息
分步完成:useradd tom
usermod -g users tom
usermod -c "hr tom" tom
一步完成:useradd -g users -c "hr tom" tom
2.设置tom用户的密码
passwd tom
3.添加一个jerry用户并设置密码
useradd jerry
passwd jerry
4.修改tom用户的登陆名为tomcat
usermod -l tomcat tom
5.将tomcat添加到sys和root组中
usermod -G sys,root tomcat
6.查看tomcat的组信息
groups tomcat
7.添加一个america的组
groupadd america
8.将jerry用户添加到america组中
usermod -g america jerry
9.将tomcat用户从root组和sys组删除
gpasswd -d tomcat root
gpasswd -d tomcat sys
10.将america组名修改为am
groupmod -n am america
10.系统命令
1.查看主机名
hostname
2.修改主机名(重启后无效)
hostname hadoop
3.修改主机名(重启后永久生效)
vi /ect/sysconfig/network
4.修改IP(重启后无效)
ifconfig eth0 192.168.12.22
5.修改IP(重启后永久生效)
vi /etc/sysconfig/network-scripts/ifcfg-eth0
6.查看系统信息
uname -a
uname -r
7.查看ID命令
id -u
id -g
8.日期
date
date +%Y-%m-%d
date +%T
date +%Y-%m-%d" "%T
9.日历
cal
cal 2012
10.查看文件信息
file filename
11.挂载硬盘
mount
umount
加载windows共享
mount -t cifs //192.168.1.100/tools /mnt
12.查看文件大小
du -h
du -ah
13.查看分区
df -h
14.查看内存使用情况
free
15.查看文件系统
/proc
16.ssh
17.关机
shutdown -h now /init 0
shutdown -r now /reboot
11.进程控制命令
1.查看用户最近登录情况
last
lastlog
查看当前在线
who
2.查看系统日志
ls /var/log/
3.查看系统报错日志
tail /var/log/messages
tail -f /var/log/messages
tail -F /var/log/messages
4.查看进程
top
5.结束进程
kill 1234
kill -9 4333