linux入门命令总结 - Go语言中文社区

linux入门命令总结


1.登录:
Login: root(管理员名)
Password:linux的密码
2.关机、注销、重启(关机:halt ,shutdown, init 0,poweroff)
        (重启:halt ,shutdown, init 0,poweroff)
Logout: 注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达logout命令即可 (回到了登录的界面)
关机或者重启的命令(shutdown):
Shutdown  now   ← 立刻关机
shutdown  +5    ←5分钟后关机
shutdown  10:30 ← 在10: 30时关机
关机后自动重启:-r 参数设置关机后重新启动。范例如下:
shutdown -r now← 立刻关闭系统并重启
shutdown -r 23:59← 指定在23: 59时重启
3.查看当前目录:pwd(print working directory)
4.列出文件列表和目录:ls(lsit)
Ls 只能列出文件夹和文件
Ls -a 可以列出文件夹和文件(包括隐藏的)
Ls -al 显示当前目录下的所有文件及文件夹包括隐藏的并显示详细信息,详细信息包括大小,属组,创建时间
Ls /usr/bin 显示指定目录下的文件
“-s”参数显示每个文件所有的空间,并以“-S”参数指定按所有占用空间的大
小排序
5.打开文件夹:cd(change directory)
Cd / 进入目录(/路径),cd home 进入home文件夹下
Pwd 查看当前的工作路径
Cd - 来换切换命令
Cd /(/以开头是绝对路径),演示:cd /usr/local/bin
Cd /usr 然后 cd local/bin
(绝对路径和相对路径的区分是否/开头,以/是绝对路径)
Cd tony ← 切换到当前目录下的tony子目录
cd .. ← 切换到上一层目录
cd / ← 切换到系统根目录(/)
cd ← 切换到用户主目录(root)
cd /usr/bin ← 切换到/usr/bin目录
创建文件夹:mkdir(make directory)
创建文件夹: mkdir tool(创建了一个tool的文件夹)
删除文件夹:rmdir(remove directory)
删除文件夹: rmdir tool(删除文件夹tool的文件夹)
6.复制文件:cp(copy)
Cp data1.txt data2.txt← 将data1.txt复制成data2.txt
cp data3.txt /tmp/data← 将data3复制到/tmp/data目录中
递回复制: 加入“-R”参数可同时复制目录下的所有文件及子目录。 范例如下:
cp -r root /usr/bin← 将所有文件(含子目录文件)复制到 usr/bin 目录下
显示复制过程:加入-v 参数可显示命令执行过程(没有什么用基本)。范例如下:
cp zip.txt zip2.txt← 一般状态下不会显示复制过程
cp –v zip.txt zip3.txt← 以-v显示复制过程
7.创建文件:(touch)
Touch a(a也是一个文件a.txt a.config后缀是告诉我们是哪个类型的)
8.删除文件或目录的rm命令
rm(remove)命令可以删除文件或目录。范例如下:
rm myfile← 删除指定的文件
rm *← 删除当前目录中的所有文件
rm命令的常用参数如下:
强迫删除(force):使用-f 参数时, rm命令会直接删除文件,不再询问。范例如下:
rm –f data.txt← 强迫删除文件
递回删除: -r 也是一个相当常用的参数, 使用此参数可同时删除指定目录下的所有文件及子目录。范例如下:
rm –r data← 删除data目录(含data目录下所有文件和子目录)
rm –r * ← 删除所有文件(含当前目录所有文件,所有子目录和子目录下的文件)
强制删除指定目录:当使用-r参数删除目录时,若该目录下有许多子目录及文件, 则系统会不间断地询问, 以确认您的确要删除目录或文件。 若已确定要删除所存目录及文件,则可以使用-rf参数,如此一来,系统将直接删除该目录中所有的文件及子目录,不再询问。范例如下:
rm –rf tmp 强制删除tmp目录及该目录下所有文件及子目录
显示删除过程:使用-v 参数。范例如下:
rm -v
9.查看文件的内容(more、cat):
More:当文件内容很多时,使用more分页查看(显示30%这样,按空格或者q翻页)
More data.txt
Cat:当文件内容很少时使用 cat data.txt
移动或更换文件,目录名称的mv命令 :
mv( move)命令可以将文件及目录移动到另一个目录下面,或更换文件及目录的名称。
范例如下:
mv a.txt ..← 将a.txt文件移到上层目录
mv z1.txt z3.txt← 将 z1.txt改名成z3.txt
cd ..← 切换到上一层目录
mv backup .. ←backup 目录上移一层
10.查找文件的locate(查找)命令
locate 命令可用来搜索包含指定条件字符串的文件或目录。范例如下:
locate zh_CN 列出所有包含“zh_CN”字符串的文件和目录。
由于locate命令是从系统中保存文件及目录名称的数据库中搜索文件,虽然系统会定时
更新数据库, 但对于刚新增或删除的文件、 目录, 仍然可能会因为数据库尚未更新而无法查得,此时可用root身份运行updatedb命令更新,为此数据库得内容正确

11.搜索字符串得grep命令
grep 命令可以搜索特定字符串来并显示出来,一般用来过滤先前得结果,避免显示太
多不必要得信息。范例如下:
grep text*.conf← 搜索当前目录中扩展名为.conf且包含“text”字符串得文件。
grep:amd.conf: ← 拒绝不符权限得操作
若您是使用一般权限的用户运行,上例的输出结果会包含很多如“拒绝不符权
限的操作之类的错误信息,可使用-s参数消除。
grep –s text *.con

命令行无限输入,停不下来

按ctrl+c,或者ctrl+J,或者ctrl+d,对于不同的情况不同命令来结束指令
重导与管道:
重导(redirect)可将某命令的结果输出导文件中, 它有两中命令: “>”和“>>”。 “>”可将结果输出到文件中, 该文件原有的内容会被删除: “>>”则将结果附加到文件中, 原文件内容不会被清除。范例如下:
ls –a>dir.txt ← 将 ls –a命令执行结果输出到 dir.txt文件。
cat data1.txt >> data2.txt ← 将 data1.txt 内容附加到 data2.txt文件之后。
通道(pipe)命令的符号是“ ”,可将某命令的结果输出给另一命令,一下范例将 ls命令的输出结果传给 grep命令过滤:
ls grep conf ← 搜索并显示 ls命令运行结果中包含有“conf”字符串
在举一个删除文件或目录的例子,可以利用 yes命令重复输出“y”字符的特性,将结果传给 rm命令,如此即可避免重复输入“y”:
yes rm –r mydi
用光盘及软盘在 Linux的文字模式下要使用光盘或软盘, 并不是只将光盘或软盘放入即可, 用户需要运行加载的命令, 才可读写数据。 所谓加载就是将存储介质( 如光盘和软盘)指定成系统中的某个目录(如/mnt/cdrom或 mnt/floppy)。通过直接存取此加载目录,即可读写存储介质中的数据。以下就来看看文字模式下的加载及卸载命令。
加载的mount(登上、增加)命令
要使用光盘时先把光盘放入光驱, 然后执行加载的mount命令, 将光盘加载至系统中:
mount /dev/mut/cdrom← 加载光盘
同理,使用软盘之前也需要和光盘一样,必须先加载后才能使用:
mount /dev/mut/floppy← 加载软盘
卸载的umount命令
如果不需要使用光盘或软盘, 则需先执行卸载命令之后, 才能将光盘或软盘退出。 范例如下:umount /mnt/← 光盘卸载
在不使用软盘时执行umount 命令卸载软盘,再将软盘拿出
umount /mnt/← 软盘卸载
后台运行程序
用户有时的程序有可能要花费很多时间, 如果将它放在前台运行, 将导致无法继续做其他事情, 最好的方法就是将它放在后台运行, 甚至可能希望在用户注销系统后, 程序还可以继续运行。让我们看看那如何实现这一目的。
在后台运行程序的&、 bg命令
将程序放到后台运行的最简单方法就是在命令最后加上“&”,范例如下:
update db &← 在后台执行 locate 数据库更新命令
bg ← 将更新操作放到后台运行
前台运行的程序fg命令
如果用户当前已有程序在后台运行,可以输入fg命令,将它从背景中移到前台运行:
fg ← 放到前台执行的命令会显示出来
在退出后让程序继续运行的nohup命令
此命令可使用户退出系统后,程序继续运行。范例如下:
nohup myserver&然后用户就可以退出了, 当再次登录的时候, 可以用ps–aux命令看到程序仍在后台中运行

12.打包、压缩与解压缩
由于这是每一个 Linux用户都会经常用到的基本功能,因此我们将介绍最常见到的打
包、压缩和解压缩程序。
打包文件的tar命令
tar命令位于/bin目录中,它能将用户所指定的文件或目录打包成一个文件,不过它并
不做压缩。一般Unix上常用的压缩方式是先用tar命令将许多文件打包成一个文件,再以gzip等压缩命令压缩文件。 tar命令参数繁多,以下举例常用参数作说明:
-c:创建一个新的tar文件;
-v:显示运作过程信息;
-f:在:指定文件名称;
-z:调用gzip压缩命令执行压缩;
-j:调用bzip2压缩命令执行压缩;
-t:参看压缩文件内容;
-x:解开tar文件。
在此举一常用范例:
tar cvf data.tar*← 将目录下所有文件打包成data.tar
tar cvf data.tar.gz*← 将目录所有文件打包成data.tar再用gzip命令压缩
tar tvf data.tar*← 查看data.tar文件中包括了哪些文件
tar xvf data.tar*← 将data.tar解开
压缩与解压缩
tar命令本身没有压缩能力, 但是可以在产生的tar文件后, 立即使用其他压缩命令来压缩,省去需要输入两次命令的麻烦。
使用-z参数来解开最常见的.tar.gz文件:
tar –zxvf foo.tar.gz←将文件解开至当前目录下
使用-j参数解开tar.bz2压缩文件:
tar –jxvf linux-2.4.20tar.bz2←将文件解开至当前目录下
使用-Z参数指定以compress命令压缩
tar –c Zvf prcture.tar.Z*.tif 将该目录下所有.tif打包并命令压缩成.tar.Z文件
其他常用命令
Linux可用的命令相当多,本章我们只举例几个常用的命令进行说明,在以后的章节中,还会接触到许多其他命令。
13.修改密码的passwd命令
passwd( password)命令可让用户变更密码。范例如下:
passwd
(current)UNIXpassword:← 输入原密码
Newpassword:← 输入新密码
Retypenewpassword← 在此输入新密码
passwd:allauthenticationtokens updatedsuccessfully← 密码修改成功
2,创建引导盘的mkbootdisk命令
如果安装系统时,并没有制作引导盘,或者引导盘已经损害,可以在安装系统之后,利用mkbootdisk命令创建一张新的引导盘:mkbootdisk ‘uname-r’
执行上述指令便可以成功的创建一张引导盘了。请保存好出盘,已备紧急用。
3,显示与设置时间的date、 clock(计时器)和ntpdate命令
date 命令可以显示当前日期时间。范例如下:
date -9月 810:00:00CST2006
CST为中部标准时间
clock命令也可以显示出系统当前的日期与时间,不过 clock命令默认不允许一般用户执行,请用root账号执行:clock
公元2006年9月8日(周五) 10时00分00秒 0.112604seconds 可以使用date命令来设置时间。 用root账号如下操作:date 09091200← 将时如果系统时间不正确要想更改,间设定为9月9日12点00分
用户有时可能会苦于不知道标准时间。没关系, 当前网络上也有校对时服务器提供的标准时间。因此可执行ntpdate命令,将系统时间设成与校时服务器一致:
ntpdate stdtime.microsoft.com← 与微软校时服务器校时。
然后再执行一次date命令,就会发现系统时间已经更改。不过这样还没有结束,还需要执行clock –w 命令将更改的时间写入计算机的CMOS中, 这样下次启动时才会使用更改过的时间。 范例如下:
clock –w(修改时间过后,要执行这个命令)
字模式下的中文信息出现乱码,怎么办
在此版的RedHatLinux中,若是在 XWindow打开文字模式窗口,以文字模式操作,则所有中文文件名、 月份, 甚至部分信息都可以正常的以中文显示。 但在文字模式的虚拟控制台中,这些中文信息,则会变成乱码,此时请如下操作,可将此信息改成英文显示:LANG=C ls–l
运行LANG=C命令后原来以中文显示(乱码)的部分,变成英文了
若想改回原来的设置,则只要再执行LANG=zh_CN命令即可:LANG=zh_C
看不到中文文件名
如果加载的存储介质中含有中文文件名,需要再运行 mount命令,再加上“-oiocharset
=cp950”参数, 这样才能看到此保存媒体内的中文文件名。 例如加载光盘就可以执行以下命令:mount –oiochatset=cp950 /dev/cdrom/mnt/cdro
linux常识篇
目录:linux下个目录的作用
这里写图片描述
用户管理:
Linux是属于多用户多任务的操作系统,可让不同的用户从本地登陆。在网络上则允许用户利用telnet、 ssh等方式从远程登陆。 无论是从本机或远程登陆, 用户都必须在该台主机上拥有账号。
本章会介绍管理员与一般用户帐号以及用户组对系统的管理和操作。
第一部分 账号管理
一、系统管理员账号与一般用户账号的差别
Linux中的账号主要分成两类: 系统管理员账号与一般用户账号。 系统管理员账号名称为root,具有对系统完全的控制权,可以对系统做任何设置及修改,当然也可以决定哪些用户可以进入系统,并设置所有账号的权限。这两类账号的主要差别如下表:
这里写图片描述
二、创建用户账号
创建用户账号有许多种方法,可以一次创建一个账号,也可以一次建多个账号。
使用useradd命令创建账号
在Red HatLinux中执行useradd命令,可创建新的用户帐号:
useradd benny ←创建benny账号
passwd benny ←设置口令
Changing password for user benny
New password: ←输入口令
Retype new password ←再输入一次
Passwd:all authentication ←设置成功
在一个系统中, 用户的账号名称必须是唯一的, 假若要创建的账号先被他人占用, 这会出现用户已存在的信息:
useradd benny
user benny exists
useradd lambert
Useradd: user lambert exists
要解决用户账号的管理问题,需要依靠系统管理员本身。一般说来有 3种方法:
管理员自己根据用户的账号来创建一份数据库, 以后在新增用户之前, 都可以利用数据库先查询账号存在与否。检查/etc目录下的 passwd文件, 该文件内含本系统所有用户的账号, 管理员可确认账号是否已经存在。
执行 finger“ 账号” 命令,查看该账号是否存在。
三、管理员账号
安装完 Linux 之后,系统默认即创建了 root账号。此账号为系统管理员,对系统拥有完全的控制权,可对系统做任何设置和修改,所以维护 root 账号的安全格外重要。
1.设置 root账号的口令
在安装 Linux 过程中,即要求安装者为 root账号设置口令。管理员可在日后更改甚至取消口令。不过,除非整个 Linux 系统只有自己使用,否则强烈建议替root账号设置一个不易被破译的口令。
在 x window下面单击主菜单, 执行“ 系统设置/根命令” 命令, 在图形界面下比较直观与 Windows 大致雷同。
拥有root账号的系统管理员除了设置口令之外,建议先替自己创建一个一般的用户的账号,供日常操作使用,如此可避免因操作失误而影响整个系统。最好等到系统需要维护时,再使用root账号登陆。
四,只允许 root登陆的维护模式
如果希望这台计算机除了root账号之外, 其他账号都不得登陆时, 可在/ect目录中执行touchnologin命令,产生一个文件名为nologin的文件,当其他用户要登陆时,系统只要发现此文件存在,就会禁止他们登陆:
RedHatLinuxrelease9(Shrike)
Kernel2.4.20-8onan686
freeloginbenny← 用benny账号登陆
Password:← 输入正确的口令
Loginincorrect← 即使输入正确也会登陆失败
login← 重新返回到登陆界面
这种状态通常用于管理员要维护系统时。 若要再度恢复用户登陆, 则只要将nologin文件删除即可。
五,停用与删除用户账号
当用户毕业、 离职、 或逾期不缴费时, 可以考虑停用或删除用户账号, 以避免这些用户继续登陆系统。
1,停用账号
将账号停用的意思是暂时不允许用户登陆系统, 但仍然保留其数据。 可编辑/ect/passwd
文件,要把停止使用的账号标注起来:
cassia:x:502:502::/home/cassia:/bin/bash
silent:x:600:100::/home/silent/bin/bash←在账号最前面加上“#”
2,删除账号
当确定用户已不再需要使用本系统, 或列为拒绝来往用户时, 可以考虑将该账号完全删除。
1,使用 userdel命令或编辑 passwd与 shadow文件
使用 userdel命令可以很方便地将用户删除,范例如下:
userdel –r silent
加上参数“-r”表示删除账号时,一并将该账号的用户的用户目录及邮件文件都删除。 若不加“-r”参数,则只会删除而保留该账号的相关目录。
当然也可编辑 passwd和 shadow文件, 直接将账号删除, 随后删除账号该账号的主目录与邮件目录。删除后台执行程序为避免用户还有程序遗留在系统中, 请执行下列命令检查后台执行的程序, 并把在后台中执行的程序删除:ps aux grep “silent”
删除计时器
此外还有一点相当重要, 就是要将用户所设置的计时器去掉。 在 Linux系统中, 用户可以自行设置计时器, 时间一到就自动执行某些命令。 这些计时器所执行的命令, 有的可能会影响系统的安全与保密, 因此必须特别注意用户所留下来的计时器。执行下列命令检查计时器:
crontab –usilent -1
当发现用户自行设置的计时器还在系统中时,直接执行 crontab–usilent–r 命令,便能删除该用户的计时器文件。
六,创建组
创建组的方法和创建账号几乎相同,且过程更简单。可执行 groupadd命令来创建组。
例如要创建GID编号700、名称为staff的组:
groupadd –g 700 staff← 执行命令
more /etc/group← 查看结果
Lambert:x:501
Cassia:x:502
Staff:x:700← 加进来了
参数-g用来指定组标识符, 0~499则留给系统使用。若省略此参数,系统会自动指定GID,使用从编号500开始尚未用掉的号码
删除组当不在需要某一个组时,可执行 groupdel命令删除组(再删除某个组前,要执行find/-group组名称命令, 检查系统中隶属于该组的目录及文件, 并利用chown命令改变其所属组):groupdel staff
文件系统与权限设置
当所有人都把目光投注在操作系统身上时,却常常忘记了一个极为重要的配角――文件系统。文件系统的优劣与否和操作系统的执行效率、稳定性以及可靠度息息相关。
一,认识系统的目录
在安装Linux的磁盘中会有很多系统默认的目录,这些目录依照不同的用途而放置特定的文件。在前面已经简单介绍过一些常用的目录,以下将详细说明每一个默认目录的功能:
/: 根目录,包含整个Linux系统的所有目录和文件。
/bin:此目录放置操作系统时所需要使用的各种命令程序。 例如cp、 rpm、 kill、 tar、 mv、
rm与ping等常用命令,还有各种不同的Shell,如bash、 bash2、 tcsh等。
/dev: 存放界面设备代号的文件。 例如硬盘的/dev/had、 终端机等。 这些文件比较特殊,他们实际上都指向所代表的界面设备。
/etc:存放与系统设置、管理相关的文件。例如记录账号名称的 passwd文件、投影口令
文件shadow都放在这里。
/etc/X11:XWindow 配置文件的目录。
/etc/rc.d:这个目录包含了启动或关机时所运行的script文件。
/home:此目录默认用来设置用户账号的主目录。
/lib:放置一些共享的函数库。
/lib/modules: 存放系统内核的模块。 某些可被模块化的部分, 并不需要在编译系统内核本体,避免内核过大导致效率较低。
/lost+found:文件系统发生问题时, Linux会自动扫描磁盘试图修正错误, 倘若找到遗失或错误的区域,就会将这些区域转成文件存放于目录中,等候管理员来进一步处理。
/misc:默认空无一物,供管理员堆放公共杂物。默认权限时全部用户都可以读取和执行文件,但是只有管理员能够写入文件。
/mnt:此目录下默认有/mnt/cdrom和/mnt/floppy两个目录,用来作为光盘与软件的加载点.
/proc: 系统内核和执行程序之间的信息, 如执行ps、 free等命令时所看到的信息, 就是从这里读取。这目录内的文件并非真的存在,用户看到的虚拟文件。
/root:系统管理员专用的目录,即root账号的主目录。
/sbin:此目录存放启动系统需运行,例如 fsck、 init、 grub、 lilo与swapon等
/tmp: 供全部用户暂时放置文件的目录。系统默认可让所有用户读取、 写入和执行文件,因此对于一般用户来说,若觉得自己的磁盘空间不够使用,便可暂时利用此目录存放文件。这里也是临时文件的目录,某些程序在执行中说产生的临时文件会存放在这个目录内。
/usr:此目录包括许多子目录,用来存放系统命令。程序等信息。
/usr/bin:放置用户可以执行的命令程序,如find、 free、 gcc等。
/usr/share/doc:存放各种文件的目录。
/usr/share/man:放置多种帮助文件。
/usr/src:存放源代码的地方, Linux系统内核的源代码就放在此目录下。
/var:系统执行时,需要暂时记录存放的数据或临时文件,都会放置在这个目录里。
/var/tmp:前面介绍的/tmp 目录除了放置所有用户暂时存放的文件之外,还提供给程序
产生的临时文件使用, 因此经常会因对方许多文件, 而显得非常杂乱。 管理员通常会定时清理/tmp 目录,维护磁盘空间的整洁。加入不想将某些文件混入/tmp 目录中,可以选择存放在这里。
二,文件属性
d:表示这是一个目录。在ext3中,目录被视为一种特殊的文件。
-:表示这是一个普通的文件
l:表示这是一个符号链接的文件,实际上它指向另一个文件。
b、 c:分别代表区块设备和其他的界面设备,是特殊类型的文件。
s、 p:这些文件关系到系统的数据结构和通道,通常很少见到。
1,一般权限
r(read, 读取): 对文件而言, 用户具有读取文件内容的权限。 对目录而言, 用户拥有浏览目录内容的权限。
w(write,写入): 对文件而言, 用户具有修改文件内容的权限。 对目录而言, 用户具有删除或移动目录内文件的权限。
x(execute,执行):对文件而言,用户具有执行文件的权限。对目录而言,用户具有进入目录的权限。
2,特殊权限
其实文件与目录的权限设置不只如此, 还有所谓的特殊权限存在。属于特殊权限会拥有一些“特权”,因而用户若无特殊需求,不应该去打开这些权限,避免安全方面出现严重漏洞,让黑客入侵。
设置UID,S(SUID,SetUID):可执行的文件若搭配这个权限, 该文件便能得到权限, 可以任意存取文件所有者能使用的全部系统资源。
设置GID, S(SGID, SetGID):应用在文件上面, 其效果和SUID相同, 只不过将范围由文件所有者扩大成组。也就是说,拥有此权限的文件,可以任意存取整个组所能使用的系统资源。
三,用户与组的权限关系
假如用户lambert属于cassia组,其用户主目录的权限设为rwxr-x—x,表示统属cassia组的用户,可以读取和记入这个目录,其他用户则只能进入该目录,但完全看不到任何内容。因而属于其他组的用户 saber,就无法读取 lambert目录中的文件。但若将/etc目录下的group文件内容作些修改,情况就不同了:

postfic:x:89:
pvm:x:24:
cassia:x:501:lambert,saber← 将saber账号加入cassia组
saber:x:502:
四,检查inode编号
链接的文件实际上都是指向磁盘中相同的数据,因为每个文件仅占用一个 inode,所以他们的inode编号应该一样。执行ls–i命令来查看文件的inode编号:
[lambert@freelambert]

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_39380737/article/details/81505202
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-05-15 22:55:02
  • 阅读 ( 660 )
  • 分类:Linux

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢