Linux常见命令
cd ~用户名:命令用于切换目录,也可切换用户的家目录。
[root@localhost ~]# cd ~123
[root@localhost 123]# pwd #查看当前路径
/home/123
用户的家目录是为特定的用户创建的文件夹,该用户对这个文件夹的内容有所有权,但也不是所有用户家目录下的程序的所有权都归该用户所有。下面的test2文件的属主是root,因为是在root权限下创建的文件,并在桌面上创建了一个只读权限的test2。
[root@localhost Desktop]# touch test2
[root@localhost Desktop]# ls -l
total 2220
-rw-r--r--. 1 root root 2272130 Aug 6 2013 cacti-0.8.8b.tar.gz
-rw-rw-r--. 1 123 123 0 Nov 1 03:38 new file
-rw-rw-r-- 1 123 123 0 Nov 17 22:42 new file (copy)
-rw-r--r-- 1 root root 0 Nov 17 23:16 test2
如果通过su登录到123用户上,在创建一个test4文件,它的属主就属于123用户,并且具有读写权限。
[123@localhost Desktop]$ su 123
Password:
[123@localhost Desktop]$ ls
cacti-0.8.8b.tar.gz new file new file (copy) test2 test3
[123@localhost Desktop]$ touch test4
[123@localhost Desktop]$ ls -l
total 2220
-rw-r--r--. 1 root root 2272130 Aug 6 2013 cacti-0.8.8b.tar.gz
-rw-rw-r--. 1 123 123 0 Nov 1 03:38 new file
-rw-rw-r-- 1 123 123 0 Nov 17 22:42 new file (copy)
-rw-r--r-- 1 root root 0 Nov 17 23:16 test2
-rw-rw-r-- 1 123 123 0 Nov 17 23:18 test3
-rw-rw-r-- 1 123 123 0 Nov 17 23:20 test4
2、type
通过type命令可现实命令的类型。Linux中的命令分为内部命令和外部命令。
[123@localhost Desktop]$ type cut
cut is /usr/bin/cut #外部命令(在一个对应的目录下)
[123@localhost Desktop]$ type echo
echo is a shell builtin #内部命令
3、printenv
通过这条命令可已查看系统的环境变量信息,该环境变量信息和JAVA设定的意思是一样的,一大堆信息中只知道PATH是环境变量的信息。新开发的程序也要在环境变量中进行设置。
[root@localhost Desktop]# printenv
ORBIT_SOCKETDIR=/tmp/orbit-123
HOSTNAME=localhost.localdomain
TERM=xterm
SHELL=/bin/bash
XDG_SESSION_COOKIE=2604b541bf302be0cd47ddec00000011-1479446380.885020-236895646
HISTSIZE=1000
GTK_RC_FILES=/etc/gtk/gtkrc:/home/123/.gtkrc-1.2-gnome2
WINDOWID=46138793
USER=123
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.tbz=01;31:*.tbz2=01;31:*.bz=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=01;36:*.au=01;36:*.flac=01;36:*.mid=01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.axa=01;36:*.oga=01;36:*.spx=01;36:*.xspf=01;36:
GNOME_KEYRING_SOCKET=/tmp/keyring-ejyje6/socket
SSH_AUTH_SOCK=/tmp/keyring-ejyje6/socket.ssh
SESSION_MANAGER=local/unix:@/tmp/.ICE-unix/2354,unix/unix:/tmp/.ICE-unix/2354
USERNAME=123
DESKTOP_SESSION=gnome
MAIL=/var/spool/mail/123
PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/123/bin
PWD=/home/123/Desktop
GDM_KEYBOARD_LAYOUT=us
LANG=en_US.UTF-8
GNOME_KEYRING_PID=2344
GDM_LANG=en_US.UTF-8
GDMSESSION=gnome
SSH_ASKPASS=/usr/libexec/openssh/gnome-ssh-askpass
HISTCONTROL=ignoredups
HOME=/root
SHLVL=11
GNOME_DESKTOP_SESSION_ID=this-is-deprecated
LOGNAME=123
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-MMUi3C39vL,guid=b6fecbcb44a8fd92e501ec9b0000003d
LESSOPEN=|/usr/bin/lesspipe.sh %s
WINDOWPATH=1
DISPLAY=:0.0
G_BROKEN_FILENAMES=1
COLORTERM=gnome-terminal
_=/usr/bin/printenv
4、hash
hash命令用来显示命令在屏幕上敲击的次数。hash -r用来清楚该命令的缓存信息。hash中使用过的命令再次使用时,不会再到内核中去调用,而直接通过缓存的KV(键值)数据库中去掉用,速度会很快。
[root@localhost Desktop]# hash
hitscommand
1/bin/grep
1/bin/vi
1/usr/bin/man
2/usr/bin/printenv
1/usr/bin/clear
5、date
显示系统的时间,这里的系统时间是系统的内核时间,内核时间是模拟时间振荡器进行计时,系统安装之后会读取主机的硬件时间,然后就会自己进行计时。利用date -u 月日小时分钟年.秒,来设定系统的时间。
[root@localhost Desktop]# date -u 1118160216.30
Fri Nov 18 16:02:30 UTC 2016
在date命令中还包括一些通配符选项,以2016/11/18为例,%y=16,%m=11,%d=18,使用通配符字段时date后面要加+。
[root@localhost Desktop]# date
Fri Nov 18 16:11:13 PST 2016
[root@localhost Desktop]# date +%y
16
[root@localhost Desktop]# date +%m
11
[root@localhost Desktop]# date +%d
18
把上面通配符后面的字母改成大写的输出效果是这样的
[root@localhost Desktop]# date +%Y
2016
[root@localhost Desktop]# date +%M
13
[root@localhost Desktop]# date +%D
11/18/16
date还可以输出文字
[root@localhost Desktop]# date +"today is %d"
today is 18
[root@localhost Desktop]# date +"this year is %Y"
this year is 2016
6、clock,hwclock
之前说过除了date可以查看当前时间,还有一个是硬件时间是通过clock来查看的,clock和date的时间可能不一样。
[root@localhost Desktop]# date
Fri Nov 18 16:22:02 PST 2016
[root@localhost Desktop]# clock
Fri 18 Nov 2016 12:22:45 AM PST -0.906975 seconds
上面的系统时间和硬件时间不一样,系统时间是正确的的,可以通过hwclock -w来进行修改。
[root@localhost Desktop]# hwclock -w
[root@localhost Desktop]# clock
Fri 18 Nov 2016 04:24:43 PM PST -0.141483 seconds
[root@localhost Desktop]# date
Fri Nov 18 16:24:51 PST 2016
还有一个命令cal可已查看当前年份的日历,cal -y 可已查看指定年。
[root@localhost Desktop]# cal
November 2016
Su Mo Tu We Th Fr Sa
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30