如你打算从Windows转到linux,或许你已经转到了linux平台。哟哟哟!!!
我说的什么?是什么缘由你来到这里,从我是一个新手时的过去的一些体验,命令和终端让我很恐惧惧怕,那些命令让我很是,我得记住多少那些的命令,记住他们来帮助我来运用linux所有的功能.毫无疑问,在线文档,书,手册,用户社区,给我不少的帮助,可是,我很是相信,这有这么一篇详细命令的文章,很是容易学习,语言描述很好理解,这篇文章帮我掌握linux以及很容易的使用它,个人这文章就是一步一步向那个目标前进.mysql
root@tecmint:~# ls Android-Games Music Pictures Public Desktop Tecmint.com Documents TecMint-Sync Downloads Templates
"ls -l"命令列表显示目录的属性内容,长列表的形式.linux
root@tecmint:~# ls -l total 40588 drwxrwxr-x 2 ravisaive ravisaive 4096 May 8 01:06 Android Games drwxr-xr-x 2 ravisaive ravisaive 4096 May 15 10:50 Desktop drwxr-xr-x 2 ravisaive ravisaive 4096 May 16 16:45 Documents drwxr-xr-x 6 ravisaive ravisaive 4096 May 16 14:34 Downloads drwxr-xr-x 2 ravisaive ravisaive 4096 Apr 30 20:50 Music drwxr-xr-x 2 ravisaive ravisaive 4096 May 9 17:54 Pictures drwxrwxr-x 5 ravisaive ravisaive 4096 May 3 18:44 Tecmint.com drwxr-xr-x 2 ravisaive ravisaive 4096 Apr 30 20:50 Templates
Command “ls -a“, list the content of folder, including hidden files starting with ‘.’.
"ls -a"命令显示目录中的内容列表,能够显示以"."开头的隐藏文件sql
root@tecmint:~# ls -a . .gnupg .dbus .goutputstream-PI5VVW .mission-control .adobe deja-dup .grsync .mozilla .themes .gstreamer-0.10 .mtpaint .thumbnails .gtk-bookmarks .thunderbird .HotShots .mysql_history .htaccess .apport-ignore.xml .ICEauthority .profile .bash_history .icons .bash_logout .fbmessenger .jedit .pulse .bashrc .liferea_1.8 .pulse-cookie .Xauthority .gconf .local .Xauthority.HGHVWW .cache .gftp .macromedia .remmina .cinnamon .gimp-2.8 .ssh .xsession-errors .compiz .gnome teamviewer_linux.deb .xsession-errors.old .config .gnome2 .zoncolor
Note: In Linux file name starting with ‘.‘ is hidden.
提示:linux中以"."开头的文件名都是隐藏的
In Linux every file/folder/device/command is a file.
在linux中全部的 文件/目录/设备/命令 都是一个文件
The output of ls -l is:
ls -l 输出:
d (表明目录).
rwxr-xr-x is 是当前的文件/目录 相对 当前用户,组,全局,所开放的权限.
The 1st 第一个参数的意思是 "ravisaive"当前用户
The 2nd 从上面的示例来看的话,每二个参数 "ravisaive"是个用户组.
4096 意思是文个把的大小是4096字节
May 8 01:06 意思是最后的修修的日期时间.
最后的就是文件名和目录名.
For more “ls” command examples read 15 ‘ls’ Command Examples in Linux.
更多的"ls"命令示例,请阅读,在linux中的15条"ls"命令实例.ubuntu
root@tecmint:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 232.9G 0 disk ├─sda1 8:1 0 46.6G 0 part / ├─sda2 8:2 0 1K 0 part ├─sda5 8:5 0 190M 0 part /boot ├─sda6 8:6 0 3.7G 0 part [SWAP] ├─sda7 8:7 0 93.1G 0 part /data └─sda8 8:8 0 89.2G 0 part /personal sr0 11:0 1 1024M 0 rom
“lsblk -l” 命令列表结构列表设备块, (不在是目录树的形式)安全
root@tecmint:~# lsblk -l NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 232.9G 0 disk sda1 8:1 0 46.6G 0 part / sda2 8:2 0 1K 0 part sda5 8:5 0 190M 0 part /boot sda6 8:6 0 3.7G 0 part [SWAP] sda7 8:7 0 93.1G 0 part /data sda8 8:8 0 89.2G 0 part /personal sr0 11:0 1 1024M 0 rom
提示:"lsblk" 使用这个命令能很是容易方便,让你能知道你新接入的USB新设备,尤为是你想在终端中卸载哪一个设备的时候.bash
3.md5sum 命令
这个md5sum命令的意思是(compute and check MD5 Message Digest),md5 checksum(一般称为 hash),用于匹配和验证文件的完整性,由于文件可能会由于,文件传输的不完整性,磁盘错误,非恶意性的干扰,而发生改变.服务器
root@tecmint:~# md5sum teamviewer_linux.deb 47790ed345a7b7970fc1f2ac50c97002 teamviewer_linux.deb
提示:用户能够用官方提供的与md5sum生成的签名进行匹配,Md5sum 在安全性方面不如 sha1sum ,这个我稍后讨论.cookie
4.dd命令
命令"dd"的意思是(Convert and Copy a file),能够用于转换与复制文件,主要使用它来复制ISO文件(或其它文件)到USB设备(或者其它本地目录),所以能够用来制做USB启动盘.session
root@tecmint:~# dd if=/home/user/Downloads/debian.iso of=/dev/sdb1 bs=512M; sync
提示在上面的示例中,这个USB设备假设被映射到了 sdb1(实际中你可使用命令 lsbk 验证一下,不然会把你的整个硬盘和操做系统都覆盖掉),必定要很是谨慎的使用磁盘的名称.
dd 命令所须要的时间通常在几秒钟到几分钟之间,主要依赖于文件类型大小与USB设备的读写速度.架构
5.uname 命令
uname 命令的意思是(unix name)主要是打印现一些详细信息都是关于 机器名称,操做系统与内核.
root@tecmint:~# uname -a Linux tecmint 3.8.0-19-generic #30-Ubuntu SMP Wed May 1 16:36:13 UTC 2013 i686 i686 i686 GNU/Linux
提示:uname显示内核类型,uname -a 能够输出详细信息.上面的信息就是使用uname -a 输出的
"linux"机器内核的名字
"tecmint"机器名称
"3.8.0-19-generic" 内核发布版本
"#30-Ubuntu SMP" 内核版本
"i686" 处理器架构
"GNU/Linux" 操做系统名称
6.命令"history"
"history" 全称(History(Event)Record) 它会以长列表的形式打印出,你在终端中执行过的命令.
root@tecmint:~# history 1 sudo add-apt-repository ppa:tualatrix/ppa 2 sudo apt-get update 3 sudo apt-get install ubuntu-tweak 4 sudo add-apt-repository ppa:diesch/testing 5 sudo apt-get update 6 sudo apt-get install indicator-privacy 7 sudo add-apt-repository ppa:atareao/atareao 8 sudo apt-get update 9 sudo apt-get install my-weather-indicator 10 pwd 11 cd && sudo cp -r unity/6 /usr/share/unity/ 12 cd /usr/share/unity/icons/ 13 cd /usr/share/unity
提示:按下"Ctrl+R",在你输命令时会自动搜索你以前执行过的命令并帮助你自动补全完成.
(reverse-i-search)`if': ifconfig
7.sudo 命令
sudo(super user do)命令充许受权一个用户去执行超级用户或者其它用户的命令,也能够经过 sudoers list文件中指定策略.
root@tecmint:~# sudo add-apt-repository ppa:tualatrix/ppa
提示:sudo 充许用户云借用超级用户的特权.还有一个类似的命令"su" 它实际是让你用超用户去命陆.sudo 比 su 安全.
“To err is human, but to really foul up everything, you need root password.”
我不建议使用 sudo 或 su 做为平常使用.它能产生严重的后果.若是你不当心作错了一些事情,那就是为何在linux的社区里流行着这么一句话:
“To err is human, but to really foul up everything, you need root password.”
8.mkdir 命令
mkdir(Make directory)命令用指定的名称路径建立新的目录,假如目录存在的话它会返回一个错误信息"不能建立目录,目录已经存在"
root@tecmint:~# mkdir tecmint
提示:这个目录只有在用户拥有可写权限时目录才能被建立,
"tecmint"目录已经存的话,"mkdir"是不能建立的.
对于上面输出的内容,不要被文件迷惑,你应该记得我开始说过,在linux中全部的文件,目录,驱动,命令,脚本,都是被视为文件。
9.touch命令
这touch 会更新每个文件的访问,修改的时间为当前的时间,假如文件不存在的话 touch 命令能够建立一个文件,若是文件存在的话,会更新文件时间戳,但不会改变内容。
root@tecmint:~# touch tecmintfile
提示:只有在文件不存在时,用户有写权限,touch能够在当前的目录下建立文件
10.chmod命令
chmod 命令(change file mode bits),chmod 能够根据的你的须要模式要求,来改变每个文件,目录,脚本,etc等等 这些文件的访问权限。
一个文件有3种权限(目录或者其它,为了方便咱们都用文件来比喻)
Read (r)=4 Write(w)=2 Execute(x)=1
所以,若是你只想让一个文件只有读取的限,就给它分配4这个值,假如只想让一个文件有写权限就给它分配2这个值,只想让它有运行的权限就给它分配1这个值. 同时有读与写权限,就是4+2=6,以此类推。
Now permission need to be set for 3 kinds of user and usergroup. The first is owner, then usergroup and finally world.
如今须要给用户与用户组设置3种权限类型,每一种是当前用户,而后是用户组,最后其它。
rwxr-x--x abc.sh
在这root的权限是 rwx(读,写,执行)
usergroup to which it belongs, is r-x (read and execute only, no write permission) and
for world is –x (only execute).
r-x属于用户组的权限(仅只有读与执行权限,没有写权限),其它用户只有执行权限。
改变它的权限,让用户,用户组,其它用户都拥有 读,写,执行权限
root@tecmint:~# chmod 777 abc.sh
三种类型用户都拥有读与写权限
root@tecmint:~# chmod 666 abc.sh
当前用户有读,写,执行权限,用户组与其它用户权只有执行权限
root@tecmint:~# chmod 711 abc.sh
提示:对于系统管理员与用户来讲这是最重要有用的命令之一,在多用户的环境中或在服务器上,这个命令能够解救问题,好比,设置了错误的权限,形成文件没法访问,或者要为某人提供不须要验证就能访问某些文件。