linux常用命令笔记(二)

2023-11-09

2020-03-18

一、echo
1、原文输出,双引号可加可不加
    echo "hello world"
    echo hello world
2、输出变量的值
    echo $变量名
    echo $PATH   --输出环境变量PATH的值
注意:linux环境变量的配置文件是:/etc/profile   ,只有root才有权限写入

 

二、head:

读取文件头部的信息,默认读取头10行
head 文件  ---读文件的头10行
head -5 文件  ---读文件的头5行

 


三、tail:

读取文件尾部的信息,默认读取10行
tail 文件  
tail -5 文件   

tail -f 文件  ---实时跟踪文件尾部的最新内容,如果不想跟踪,按ctrl+c退出即可

 

四、重定向:
1、输入重定向:<   了解:  命令 < 文件名   ---将文件的内容输入给命令     wc < hadoop.list
2、输出重定向:还有一个新的功能---创建新文件
    (1): 标准输出重定向    
        标准输出:指的是命令正确运行的输出结果
     > : 命令 > 文件名 --- 会前面命令的输出结果写入到文件中,如果文件不存在,会创建该文件后写入命令的输出内容,如果文件存在,会将文件中原来的信息清除掉之后将命令的输出写入
    >>:命令>> 文件名   ----与上面的命令一样,只是当文件存在时,会在文件原来内容的后面追加写入命令的输出
    (2):标准错误输出重定向
        标准错误输出: 指的是命令没有正确运行的报错输出
        2>:  与>一样,会清除原内容再写入
        2>>: 追加写入
    (3)标准输出和标准错误输出重定向
        &>:会清除原内容再写入
        &>>:追加写入


五、ln:

创建链接, 是link的缩写
语法:ln -s  【源文件或目录的绝对路径】 【链接路径/链接名】
-s:代表创建的链接是符号链接 ,也叫软链接  在ls -l 查看详细列表时,文件类型会显示为l
如果不加-s,创建的链接叫硬链接,只能对文件创建,必须在同一分区 ,文件类型显示为-
注意:源文件和目录一定要写绝对 路径,否则容易找不到。

 

六、history: 

查看当前用户使用的所有历史命令。
历史命令有个数限制的,是环境变量HISTSIZE的值来决定的。
每个用户的历史命令保存在当前用户家目录下的.bash_history中。

 

七、useradd

添加用户
用户管理的一般是由root来进行操作的。
1、用户帐号文件:/etc/passwd
root:x:0:0:root:/root:/bin/bash
hadoop:x:1001:1001::/home/hadoop:/bin/bash

该文件中的每一行都代表Linux上的一个用户的信息,有7个字段组成,字段与字段之间以冒号分隔
第1个字段:登录的用户名
第2个字段: 密码占位符
第3个字段:用户的uid,相当于用户在linux系统上的唯一身份id
第4个字段:用户的基本组id
第5个字段:用户的全名
第6个字段:用户的家目录 、宿主目录
第7个字段:用户的登录shell  默认的shell为/bin/bash

语法:useradd [选项] 用户名
useradd 用户名  -- 用户的所有属性都使用的是默认值

ls -l 查看目录的详细格式说明:
-rw-------. 1 root root 1600 3月   9 21:37 anaconda-ks.cfg

第1个字段:
-rw-------:第1个字符代表是文件类型:-:普通文件   d:目录文件   l:链接文件  b:块设备文件   c:字符设备文件
            第2,3,4个字符代表文件属主的权限    r:读   w:写   x:执行
      第5,6,7个字符代表文件属组的权限   
     第8,9,10个字符代表文件其它用户的权限
第2个字段:文件或目录的深度
第3个字段:文件或目录的属主
第4个字段:文件或目录的属组
第5个字段:文件的大小
第6个字段:最后一修改时间
第7个字段:文件或目录名

 

2020-03-25 

一、useradd:
用户帐号文件:/etc/passwd
用户密码文件:/etc/shadow
1、创建用户:
语法:useradd [选项] 用户名
---创建用户test1
useradd test1
//用户test1的属性都为默认值:
    家目录:/home/用户名
    登录shell: /bin/bash
    UID:系统指定
    添加一个与用户名相同的组:test1  查看组信息:/etc/group
    在用户的家目录复制了一批文件:从/etc/skel目录中复制来的。
        ~/.bash_profile: 用户每次登录时执行的文件,通常用来进行用户环境变量的定义,注意:系统环境变量/etc/profile
        ~/.bashrc: 每次进入新的bash环境时执行
        ~/.bash_logout: 用户每次退出登录时执行

2、如果用户指定属性信息:
   -u: 指定UID
   -d:指宿主目录或家目录, 缺省的家目录为/home/用户名
   -g:指定用户的基本组名
   -G:指定用户的附加组名
   -s:指定用户的登录shell
---创建用户test2, 指定用户UID为888,基本组为root组,登录shell为/bin/csh,指定家目录为/opt/aaa
 useradd -u 888 -g root -s /bin/csh -d /opt/aaa test2        

二、passwd:
1、如果是重置自己的密码:
passwd
2、如果是设置指定用户的密码(root操作):
passwd 用户名
3、锁定/解锁帐号密码:当用户密码被锁,该用户就不能登录到系统上
-l: 锁定密码
-u: 解锁密码
-S:查看用户的帐号的状态

三、id:查看用户的身份标识
---查看指定用户的身份标识
id 用户名
---查看当前登录用户的身份标识
id

四、su:切换用户
su 用户名   //切换用户身份,但是不更改当前工作目录
su - 用户名    //切换用户身份,并且当前工作目录会更改为新用户的家目录

---当前登录用户是root, 切换到其它用户下,不需要输入密码
su - 用户名

---当有登录用户是普通用户,切换到其它用户下,都需要输入密码
su 用户名
注意:如果是想切换到root身份下,也可以直接输入su, 回车输入密码即可。

五、userdel:删除用户
userdel [-r] 用户名
-r: 删除用户时将用户的家目录一并删除

六、who查看连接Linux服务器的用户信息

who
w

七、usermod:修改用户的基本属性:
-u: 修改用户的uid
-d:修改用户的家目录
-s: 修改用户的登录shell
-g:修改用户的基本组

usermod [选项] 用户名

----修改test3用户的登录shell为/bin/csh, 用户基本组为root
usermod -s /bin/csh -g root test3

八、用户组管理
1、组管理文件:
/etc/group: 文件中存放在所有组的信息
---每一行都代表一个组的信息
test3:x:1002: 
字段1:组名p
字段2:密码占位符
字段3:组ID
字段4:加入该组的用户列表

/etc/gshadow: 保存组帐号的密码信息  ,一般情况下,是不对组设置密码的。

2、groupadd:
语法:groupadd [-g gid] 组名
---创建一个组neu, 组id为666
groupadd -g 666 neu

3、gpasswd: 添加/删除组成员
语法:
gpasswd [选项] 组名
选项:
     -a: 向组内添加一个用户
     -d: 从组内删除一个用户
     -M:定义组成员列表,以逗号分隔
4、groupdel:删除组
groupdel 组名

5、groupmod:修改组
groupmod [选项] 组名
选项:
    -n: 修改组名
    -g: 修改组id

groupmod -n 新组名 旧组名
groupmod -g 新组id  组名

九、修改权限
格式一:
chmod [ugoa][+-=][rwx] [-R] 文件名或目录

-R: 递归修改,会将目录以及目录下的所有文件和目录的权限一并修改
u: 属主
g: 属组
o:其它用户
a:所有用户
+:增加权限
-: 减去权限 
=:重置权限
r: 读
w; 写
x: 执行

---修改当前目录下文件ana.cfg的权限为属主读写执行,属组读写,其它用户为读
chmod u+x,g=rw,o=r ana.cfg
--修改当前目录下文件ana.cfg的权限所有用户都为读写
chmod a=rw ana.cfg
---递归修改当前目录下aaa目录以及子目录子文件的权限都为所有用户读写执行
chmod -R a=rwx aaa

格式二:
chmod nnn [-R] 文件名或目录名
第一个n: 属主的权限值
第二个n:属组的权限值
第三个n:其它用户的权限值

读: 4
写: 2
执行: 1

读写执行:4+2+1=7
读写: 4+2=6
---递归修改当前目录下aaa目录以及子目录子文件的权限都为所有用户读写执行
chmod -R 777 aaa
---修改当前目录下文件ana.cfg的权限为属主读写执行,属组读写,其它用户为读
chmod 764 ana.cfg

十、修改属主和属组
格式:
  chown 属主 [-R] 文件或目录
  chown :属组 [-R] 文件或目录
  chown 属主:属组 [-R] 文件或目录


---修改当前目录ana.cfg 属主为test2, 属组为neusoft
chown test2:neusoft ana.cfg
-修改当前目录下的aaa目录以及子目录子文件的属主为test2, 属组为neusoft
 chown test2:neusoft -R aaa
 

 2020-04-01

一、find:查找文件或目录的位置
    有一个相似的命令:which   ---查找命令程序的位置,查找范围是$PATH环境变量中所列出的路径。
语法:find [查找范围] [查找条件选项]
    查找范围:
    /: 在整个linux系统中进行查找
    /etc: 查找配置文件时指定的路径
    查找条件:
    -name: 指定文件或目录名    文件名可以模糊查找,*:代表任意字符
    -user:按文件或目录属主
    -size: 按文件的大小   +:大于    -:小于   省略:等于
    -type: 按文件类型    f: 普通文件    d: 目录文件    l: 链接文件   b: 块设备文件   c:  字符设备文件

二、|:管道符
前一个命令的输出是后一个命令的输入。

ls -R / | more     ---将查找根目录以及子目录的列表分页显示

三、grep: 
语法1:
    grep [选项] 查找的字符串 文件名
    选项:-n   ---会显示对应的行号
    查找的字符串: 用双引号引起来 ,  “^str”---以str开头的     ,"str$" ----以str结尾的,  “str”---包含str的

比如:
     grep -n "a$" anaconda-ks.cfg
    grep -n "^a" anaconda-ks.cfg

语法2:
    命令 | grep  [选项] "查找字符串"
    比如: ls -a | grep ".bash"
               cat anaconda-ks.cfg | grep "install" | grep "Use" | grep "CDROM"


四、which: 查找外部命令程序文件的位置
查找范围是$PATH环境变量所设置的路径


五、gzip/gunzip:压缩和解压.gz包
特点注意:一个压缩包只能压缩一个文件
    只能压缩文件不能压缩目录
    压缩后原文件不保留
    解压后压缩文件不保留

     gzip ana.cfg
    gunzip ana.cfg.gz

所以:因为这些限制,该命令一般不单独使用。

六、zip/unzip: 压缩和解压.zip包
zip [-r] 压缩包名.zip 要压缩的目录或文件的列表
unzip [-d 目标解压目录] 压缩包名.zip

 zip -r rootlist.zip aaa ana.cfg anaconda-ks.cfg initial-setup-ks.cfg 文档
 unzip -d ./new rootlist.zip

七、tar: 压缩和解压.tar 和.tar.gz包
压缩.tar
     tar -cvf 压缩包名.tar 压缩的文件或目录列表
压缩.tar.gz
    tar -zcvf 压缩包名.tar.gz 压缩的文件或目录列表
解压.tar:
    tar -xvf  压缩包名.tar [-C 目标解压目录]
解压.tar.gz:
   tar -zxvf 压缩包名.tar.gz [-C 目标解压目录]


 tar -cvf rootlist1.tar aaa *.cfg
 tar -zcvf rootlist2.tar.gz aaa *.cfg new
 tar -xvf rootlist1.tar -C test
 tar -zxvf rootlist2.tar.gz -C targz

八、df:查看硬盘的使用情况
df -h: 以易读方式显示硬盘各分区的空间占用情况

-t: 查看指定文件系统的空间占用情况
-T:在结果中显示文件系统类型。
 df -t xfs -hT

九、free:查看linux内存的使用情况
free -h:以易读方式显示内存的空间占用情况

十、mount/umount:挂载和卸载
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom    ---将虚拟机的光驱设备挂载到/mnt/cdrom目录中
ls /mnt/cdrom     ---查看光盘中的内容
umount /mnt/cdrom   ---卸载挂载点

十一、ps:
ps -aux   : 查看CPU和内存的使用率
ps -ef:  查看 父子进程的关系 

十二:kill:杀掉进程
kill -9 进程号;


 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

linux常用命令笔记(二) 的相关文章

随机推荐

  • YOLO系列梳理(三)YOLOv5

    前言 YOLOv5 是在 YOLOv4 出来之后没多久就横空出世了 今天笔者介绍一下 YOLOv5 的相关知识 目前 YOLOv5 发布了新的版本 6 0版本 在这里 YOLOv5 也在5 0基础上集成了更多特性 同时也对模型做了微调 并且
  • 计网第五章(运输层)(七)(TCP的连接建立)

    目录 一 基本概述 二 连接建立 1 基本任务 2 具体实现 三 经典问题之为什么不用 两次握手 一 基本概述 在前面的部分提到过 TCP是基于运输连接来传输TCP报文段 所以TCP的连接和释放是每次面向连接的通信过程中必不可少的过程 TC
  • 7-16 插松枝

    人造松枝加工场的工人需要将各种尺寸的塑料松针插到松枝干上 做成大大小小的松枝 他们的工作流程 并不 是这样的 每人手边有一只小盒子 初始状态为空 每人面前有用不完的松枝干和一个推送器 每次推送一片随机型号的松针片 工人首先捡起一根空的松枝干
  • Flutter中深入了解MaterialApp,常用属性解析

    一 Flutter中结构图 Flutter Framework Foundation Animation Painting Gestures合成了Dart UI层 对应的是Flutter中 dart ui 包 对应的含义是动画 手势 绘制能
  • Android compileSdkVersion 升级到33

    compileSdkVersion minSdkVersion 和 targetSdkVersion 1 minSdkVersion 应用兼容的SDK API最低版本 若手机系统低于minSdkVersion将无法安装 AndroidStu
  • MYSQL字符串大小写 缺省行为

    今天遇到一个主键冲突的文件 我看两条记录的主键明明不一样 一条是大写的JAA 另外一条是小写的jaa 莫灰是mysql对字段的值不区分大小写 在网上查了一下 还真是 默认情况下 找了一篇文章 摘自 http www oklinux cn h
  • Starting the Docker Engine...一直转圈

    真是服了 网上一大堆解决教程 不管咋样就是转圈 就是打不开 好家伙 原来是要登录账号才行 奶奶的 账号以登录 立马就OK了 白费我好大的心血和时间 右上角 登录账号
  • VS Code快捷键MAC环境(持续更新)

    VS Code内打开终端 ctrl
  • hbuilder打包ios所需的IDP/IEP证书创建流程

    在uniapp开发进行云打包的时候 打包Ios应用需要IDP IEP证书和证书profile文件 无论使用windows电脑 还是mac电脑 生成ios证书 需要苹果开发者账号 假如你还没有苹果开发者账号 你可以参考下文先到苹果开发者中心开
  • 微信公众号订阅通知介绍

    功能介绍 订阅通知是一个用户主动订阅 服务号按需下发的通知能力 使用过程请遵守 微信公众平台服务协议 微信公众平台运营规范 如有疑问 可在微信开放社区反馈 设置订阅功能 服务号可以在图文消息 网页等场景设置订阅功能 下发条件 用户在前述场景
  • mybatis 自动填充无效_mybatis-plus3.3.0自动填充方法有改变?

    源自 mybatis plus3 3 0自动填充方法有改变 Slf4j Component public class MyMetaObjectHandler implements MetaObjectHandler Override pub
  • git 服务器 文件目录结构,查看Jenkins 服务器上的目录结构

    1 很多同学 不太清楚 默认的Jenkins安装后 文件在服务器 的哪个目录 其实 大家随便构建一个JOB 看 控制台输出 是的 Jenkins的所有文件 存储在 root jenkins这个文件夹 2 通过xshell等工具 进入 jen
  • 网页设计规范 网页设计稿尺寸

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 移动端H5设计稿尺寸 移动端H5尺寸 设计移动端 H5 项目的时候 我们一般以用户量较高的 iPhone6 7 8的尺寸 750x1334px为准 然后我们要在顶部预留出微
  • Native memory allocation (mmap) failed to map 6215958528 bytes for committing reserved memory

    今天突然发现es报错 无法正常启动 报错信息如下 Exception in thread main java lang RuntimeException starting java failed with 1 output There is
  • 【微信小程序入门到精通】— 渲染列表的详细方法

    目录 前言 一 引入 wx for 1 1 wx for 语法结构 1 2 wx for 实例 二 wx key 应用 总结 前言 对于目前形式 微信小程序是一个热门 那么我们该如何去学习并且掌握之后去做实际项目呢 为此我特意开设此专栏 在
  • CVE-2021-3493漏洞复现案例(提权)

    下面复现需要在虚拟机中完成 CVE 2021 3493漏洞案例 可以在下面链接下载关于该漏洞的代码脚本 https github com inspiringz CVE 2021 3493 1 攻击工具及环境说明 在虚拟机上完成 Ubuntu
  • 【已更新】2023mothercup妈妈杯D题数学建模挑战赛思路代码-航空安全风险分析和飞行技术评估问题

    我们来看下D题 这道题是一道数据分析类题目 总共有五个小问 第一题是要求我们针对附件1的数据质量开展可靠性研究 提取与飞行安全相关的部分关键数据项 并对数据项的重要程度进行分析 第一步是对数据的可靠性分析 数据质量的可靠性研究主要包括数据完
  • win32 socket编程 示例(功能简单,完善)

    最近在做的一个项目要用到网络通信方面的内容 于是自学了下win32socket 原来自己学过计算机网络 只了解网络各层的原理 但没有真正的编程来实现这些原理 哎 不过现在还来得及 下面是自己的一个示例 虽然简单 但了解了它 就知道了最基本的
  • Idea 学生认证

    Idea 学生认证 具体步骤 认证地址 操作如图 具体步骤 认证地址 https www jetbrains com community education students 操作如图 学生邮箱会收到来信 认证完成
  • linux常用命令笔记(二)

    2020 03 18 一 echo 1 原文输出 双引号可加可不加 echo hello world echo hello world 2 输出变量的值 echo 变量名 echo PATH 输出环境变量PATH的值 注意 linux环境变