基础指令

#打印字符串
echo hello linux #将file1 和 file2粘合在一起,打印到标准输出流
cat file1 file2

标准输入输出

  • 标准输入,stdin,即键盘、鼠标输入
  • 标准输出,stdout,即输出到终端
  • 标准错误流,stderr,输出到终端的错误信息

常用命令

# 列出目录下的文件以及详细信息
ls -l /home #将file1复制到file2
cp file1 file2
#将多个文件复制到dir目录
cp file1 file2 file3 dir #将file1重命名成file2,如果两者在同一个目录下
mv file1 file2
#将多个文件移动到dir目录下
mv file1 file2 file3 dir # 创建文件file,如果已经存在则更新创建时间
touch file #删除文件以及目录下的文件
rm file
rm -rf /dir #将参数显示到标准输出,还可以输出变量以及
echo hello again

浏览目录

  • .表示当前目录
  • ..,表示上一层级目录
# 切到dir目录下
cd /dir #创建dir目录
mkdir /dir echo at* #打印当前目录下所有at开头的文件名
echo *at* #所有包含at的
echo *at # 所有at结尾的 # * 通配任意长度的字符串
# ? 通配单字符
# '*'可以禁止通配符展开,即打印字符(*)本身

中间命令

#在passwd文件中匹配root关键字的行,并打印到标准输出流
grep root /etc/passwd
#匹配etc目录下所有包含root行的文件
grep root /etc/*
# -i表示不区分大小写匹配root,比如RooT,rOOT等
grep -i root /etc/passwd
#-v 表示反向匹配passwd文件,即打印所有不含有root的行
grep -v root /etc/passwd #相当于cat和more的加强版,分屏浏览文件内容
less /usr/share/dict/words
# B前一屏,SPACE后一屏,q退出,/word向下搜索Word关键字,?word向上搜索Word关键字 #显示当前目录
pwd -P #比较两文件的不同点
diff file1 file2 #查看file1文件的格式信息
file file1 #/dir目录下查找名为fileName的文件地址,并打印到终端
find /dir -name fileName #打印file1的前10行,如果 -5,表示前5行
head file1
#打印passwd文件尾部内容
tail /etc/passwd #排序file1的行,输出到标准流(终端)
sort file1
sort -r /etc/passwd#反向排序

基础文件系统知识

修改密码

passwd #然后输入一次旧密码,两次新密码即可修改当前用户密码
passwd root #修改root用户的密码

dot文件

即以.开头的文件,默认隐藏,调用ll可显示

环境变量与shell变量

STUFF=blade #给STUFF变量赋值blade,注意等号两边没空格,否则报错

echo $STUFF #打印STUFF变量

#将变量转成系统环境变量
export STUFF
  • 环境环境变量与shell变量的最大区别:shell变量只在当前shell作用,环境变量整个系统都可以使用,包括一些文件配置文件等。典型的,我们常配置$PATH变量

命令路径

$PATH变量,他定义了一堆目录,目录之间以:分割开来。在终端键入指令时,比如ls,就会在PATH定义的路径下搜索指令文件。如果有多个目录含有该指令,以第一个目录为准

敲命令行的一些快捷键

ctrl-b #光标左移
ctrl-f #光标右移
ctrl-p #上一个指令
ctrl-n #下一个指令
ctrl-a #光标移到指令开头
ctrl-e #移到指令结尾
ctrl-u #删除光标到开头的内容
ctrl-k #删除光标到结尾的内容
ctrl-y #粘贴前面删除的内容

帮助文档

#查看ls指令帮助文档
man ls #查看find指令的文档
info find #查找带sort关键字的所有指令
man -k sort

指令类型

类型代号 类型意义
1 用户指令
2 系统内核函数
3 lib函数库
4 接口、设备、驱动信息
5 配置文件,大多在/etc下面
8 超级用户的系统级指令

重定向以及管道

重定向:即将输出流的位置重新改变,常用的是该标准输出流到一个文件

#将grep的输出重定向到file1中
grep root /etc/passwd > file1
#一般的`>`会清空文件的本身内容在接受输出,使用`>>`会改为追加模式

管道:即前一个指令的输出做下一个指令输入,数据在指令之间流通就像流经不通的管道一样

# 将grep的输出内容使用sort排序,然后重定向到file1中
grep -v root /etc/passwd | sort > file1

查看、操作中进程

参数

  • pid:进程id,process id
  • tty:终端设备
  • stat:状态,S表示sleep,R表示RUN
  • time,占用CPU的时间
  • command:启用这个进程的指令

查询指令

# x:当前用户占用的所有进程 ax:系统所有进程 u:更详细的进程信息 w:显示命令行全名
#下面的意思为:显示进程名含有keywords的进程
ps -aux process_keywords

终结进程

kill pid
kill -term pid kill -stop pid #暂停进程
kill -cont pid #唤醒进程 kill -9 pid

文件权限

drwxr-xr-x的含义

文件详情的第一列,形如drwxr-xr-x,就是描述一个文件权限的描述符,共计10位字符

  • 0位,-:表示文件,d:表示目录,l:表示链接文件等
  • 1-3:表示文件所有者的权限,r:读 w:写 x:执行
  • 4-6:用户组的权限
  • 7-9:其他组的权限

修改文件权限

#group other增加读权限
chmod go+r file #设置权限为744,即读写操作-读-读
chmod 744 file

数值描述权限

  • r:4
  • w:2
  • x:1

因此,744就是(4+2+1)-(4+0+0)-(4+0+0)

注意,一个目录如果没有x权限,只能ls查看他包含的文件名称,却不能cd进去,也不能读取他里面的文件

创建符号链接

符号链接,即快捷键,给某个目录建立一个快捷键

#target:目标目录 linkname:连接符号名
ln -s target linkname

压缩、归档

压缩:将文件归为一个压缩包,降低占用空间

#压缩
gzip file
#解压
gunzip file.gz

归档:即将多个文件或者某文件夹整合为一档

# c:创建归档 v:显示细节 f:表示文件,后接文件名
tar cvf archive.tar file1 file2...
#解压归档文件 x:解压
#tar xvf achiver.tar

其实,在实际中压缩与归档可以用tar指令一步完成,如

#解压
tar xzvf file.tar.gz #压缩 归档
tar czvf achiver.tar.gz file1 file2...

linux目录结构

  • bin:可执行文件,c编译的二进制文件和shell脚本
  • sbin:超级用户的可执行文件,系统级指令
  • etc:配置文件
  • lib:编译动态链接库、函数等
  • home,家目录,理论上每个用户都在下面有个家
  • dev:接口设备文件
  • proc 和 sys:系统信息如进程信息等
  • var:运行时信息,日志、缓存、用户信息等
  • usr:大量系统文件,复杂
  • boot:启动的内核加载文件
  • media:可插拔设备文件
  • opt:第三方软件目录,很多系统没有这个目录

usr目录

存放用户空间的进程和数据

  • usr/bin 和 usr/sbin:用户使用的一些指令
  • usr/lib:链接库
  • include:c的哄文件(*.h)
  • info:指令文档
  • man:指令文档
  • local:管理员装软件的地方

内核位置

系统内核在vmlinuz或者boot/vmlinuz中

超级用户

通过修改etc/sudoers文件,可以添加拥有超级权限的普通用户。这个用户只需要敲sudo即可执行root权限

参考

  • 《精通linux第二版》

linux基础指令以及权限管理的更多相关文章

  1. Linux 基础指令初识

    Linux 基础指令初识 01. ls 指令 语法: ls [选项] [目录或文件] 功能:对于目录,该命令列出该目录下的所有子目录与文件.对于文件,将列出文件名以及其他信息 -a 列出目录下的所有文 ...

  2. Linux基础指令

    Linux基础指令 只写了最简单的一些文件操作,基本没有带参数 查看当前目录 pwd 跳转到某路径 cd 查看当前目录下的文件 ls ls -l // -l 查看详细信息 打开当前所在文件夹 open ...

  3. Linux用户及文件权限管理

    Linux用户及文件权限管理

  4. Linux课程---10、权限管理(权限有哪几种)

    Linux课程---10.权限管理(权限有哪几种) 一.总结 一句话总结: r 读 w 写 x 执行 1.drwxr-x---  2 root root  4096 Jan 20 19:39 mnt ...

  5. Linux常见命令之权限管理命令

    chmod命令 chmod命令用来变更文件或目录的权限.在UNIX系统家族里,文件或目录权限的控制分别以读取.写入.执行3种一般权限来区分,另有3种特殊权限可供运用.用户可以使用chmod指令去变更文 ...

  6. Linux学习之常用权限管理命令(二)

    (一)常用权限管理命令 (1)chmod命令 (2)chown (3)chgrp (4)umask (一)常用权限管理命令 (1)chmod命令 命令名称:chmod命令英文原意:change the ...

  7. Linux基础三(软件安装管理)

    目录: 一.Linux 中软件包的分类 1.源码包 2.二进制包 3.源码包 4.软件安装的选择 二.软件安装之 RPM 1.背景知识 2.准备知识 3.安装升级与卸载 4.查询校验与提取 三.软件安 ...

  8. Linux基础指令--韩顺平老师课程笔记

    一.vi和vim编辑器 ①.三种模式 所有的 Linux 系统都会内建 vi 文本编辑器.vim 具有程序编辑的能力,可以看做是 vi 的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计. ...

  9. Linux UGO和ACL权限管理

    自主访问控制(Discretionary Access Control, DAC)是指对象(比如程序.文件.进程)的拥有者可以任意修改或者授予此对象相应的权限.Linux的UGO(User, Grou ...

随机推荐

  1. git rebase 和 git merge 总结

    git merge 和 git rebase 都是用于合并分支,但二者是存在区别的. 在使用时,记住以下两点: 当你从 remote 去 pull 的时候,永远使用 rebase(除了一个例外) 当你 ...

  2. CSS基础语法与选择器

    CSS基础 语法 : <head> <style type="text/css"> 选择器(即修饰对象){ 修饰属性:属性值; 修饰属性:属性值; } &l ...

  3. JS自定义手机端H5键盘

    在输入车牌号的时候,因为很多车牌号都是数字字母混合排列的,所以如果用输入法输入就需要频繁切换数字跟字母,有点麻烦. 在这里我们就用自定义一个弹出框代替键盘来使用. 1.首先,要禁止掉文本框弹出输入法, ...

  4. Angular 基础教程(1)

    简介 什么是AngularJS 一个功能非常完备的前端框架,通过增强HTML的方式提供一种便捷开发Web应用程序的方式 其核心特点就是几乎无任何DOM操作,让开发人员的精力和时间全部集中于业务 MVC ...

  5. css background 背景知识详解

    background 背景属性 我们知道元素有前景色color,与之对应的还有背景色,通过background我们可以为元素添加实色(background-color)和任意多个背景图片(backgr ...

  6. 自整定模糊PID算法的理论

    模糊控制系统的构成与与常规的反馈控制系统的主要区别在于控制器主要是由模糊化,模糊推理机和精确化三个功能模块和知识库(包括数据库和规则库)构成的.具体实现过程如下所示: (1)预处理: 输入数据往往是通 ...

  7. jdk时区相差8小时

    设置JVM的默认时区为东八区(北京时间)在下面四个目录(jre6\lib\zi\Etc.jre6\lib\zi.jdk1.6.0_18\jre\lib\zi\Etc.jdk1.6.0_18\jre\l ...

  8. Selenium2学习(六)-- 定位神器CSS

    前言 大部分人在使用selenium定位元素时,用的是xpath定位,因为xpath基本能解决定位的需求.css定位往往被忽略掉了,其实css定位也有它的价值,css定位更快,语法更简洁.这一篇css ...

  9. PythonTip(2)

    结尾0的个数 描述: 给你一个正整数列表 L, 输出L内所有数字的乘积末尾0的个数.(提示:不要直接相乘,数字很多,相乘得到的结果可能会很大). 例如: L=[2,8,3,50], 则输出:2 n = ...

  10. Manacher算法模板

    题目描述 给出一个只由小写英文字符a,b,c...y,z组成的字符串S,求S中最长回文串的长度. 字符串长度为n 输入输出格式 输入格式: 一行小写英文字符a,b,c...y,z组成的字符串S 输出格 ...