linux基础命令(1)

1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。

1)chown命令:将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID;组可以是组名或者组ID;文件是以空格分开的要改变权限的文件列表,支持通配符。系统管理员经常使用chown命令,在将文件拷贝到另一个用户的名录下之后,让用户拥有使用该文件的权限。

用法:

chown [选项]... [所有者][:[组]] 文件...

命令参数:

必要参数:

-c 显示更改的部分的信息

-f 忽略错误信息

-h 修复符号链接

-R 处理指定目录以及其子目录下的所有文件

-v 显示详细的处理信息

-deference 作用于符号链接的指向,而不是链接文件本身

选择参数:

--reference=<目录或文件> 把指定的目录/文件作为参考,把操作的文件/目录设置成参考文件/目录相同拥有者和群组

--from=<当前用户:当前群组> 只有当前用户和群组跟指定的用户和群组相同时才进行改变

--help 显示帮助信息

--version 显示版本信息

示例:

[root@localhost tmp]# ll etc.conf 

-rw-r--r--. 1 root root 3130 8月 29 21:54 etc.conf

[root@localhost tmp]# chown test:users etc.conf

[root@localhost tmp]# ll etc.conf                  

-rw-r--r--. 1 test users 3130 8月 29 21:54 etc.conf

[root@localhost tmp]# 

2)passwd命令:修改用户密码

用法: passwd [选项...] <帐号名称>

  -k, --keep-tokens 保持身份验证令牌不过期

  -d, --delete 删除已命名帐号的密码(只有根用户才能进行此操作)

  -l, --lock lock the password for the named account (root only)

  -u, --unlock unlock the password for the named account (root only)

  -e, --expire expire the password for the named account (root only)

  -f, --force 强制执行操作

  -x, --maximum=DAYS 密码的最长有效时限(只有根用户才能进行此操作)

  -n, --minimum=DAYS 密码的最短有效时限(只有根用户才能进行此操作)

  -w, --warning=DAYS 在密码过期前多少天开始提醒用户(只有根用户才能进行此操作)

  -i, --inactive=DAYS 当密码过期后经过多少天该帐号会被禁用(只有根用户才能进行此操作)

  -S, --status 报告已命名帐号的密码状态(只有根用户才能进行此操作)

  --stdin 从标准输入读取令牌(只有根用户才能进行此操作)

实例:

[root@localhost tmp]# echo "hello_world"|passwd test --stdin

更改用户 test 的密码 。

passwd: 所有的身份验证令牌已经成功更新。

[root@localhost tmp]# 

3)useradd命令:创建新用户

用法:useradd [选项] 登录

      useradd -D

      useradd -D [选项]

选项:

  -b, --base-dir BASE_DIR 新账户的主目录的基目录

  -c, --comment COMMENT 新账户的 GECOS 字段

  -d, --home-dir HOME_DIR 新账户的主目录

  -D, --defaults 显示或更改默认的 useradd 配置

 -e, --expiredate EXPIRE_DATE 新账户的过期日期

  -f, --inactive INACTIVE 新账户的密码不活动期

  -g, --gid GROUP 新账户主组的名称或 ID

  -G, --groups GROUPS 新账户的附加组列表

  -h, --help 显示此帮助信息并推出

  -k, --skel SKEL_DIR 使用此目录作为骨架目录

  -K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值

  -l, --no-log-init 不要将此用户添加到最近登录和登录失败数据库

  -m, --create-home 创建用户的主目录

  -M, --no-create-home 不创建用户的主目录

  -N, --no-user-group 不创建同名的组

  -o, --non-unique 允许使用重复的 UID 创建用户

  -p, --password PASSWORD 加密后的新账户密码

  -r, --system 创建一个系统账户

  -R, --root CHROOT_DIR chroot 到的目录

  -s, --shell SHELL 新账户的登录 shell

  -u, --uid UID 新账户的用户 ID

  -U, --user-group 创建与用户同名的组

  -Z, --selinux-user SEUSER 为 SELinux 用户映射使用指定 SEUSER

实例:

[root@localhost tmp]# useradd -d /opt/hello -s /sbin/nologin hello

[root@localhost tmp]# tail -1 /etc/passwd

hello:x:507:507::/opt/hello:/sbin/nologin

[root@localhost tmp]# 



2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。

命令行展开:

~:展开为用户的主目录

~USERNAME:展开为指定用户的目录

{}:可展开为多个路径,多个路径以逗号分隔。

如:/tmp/{a,b,c} 则展开为/tmp/a , /tmp/b , /tmp/c 三个目录或者文件

命令的执行结果状态:

Bash使用特殊变量$?保存最近一条命令的执行状态结果:echo $? 

成功:0 

失败:1-255

例如:

[root@localhost tmp]# cat /etc/passwd >/dev/null 2>&1;echo $?

0

[root@localhost tmp]# cat /etc/passwd1 >/dev/null 2>&1;echo $?

1

[root@localhost tmp]#

3、请使用命令行展开功能来完成以下练习:

(1)、创建/tmp目录下的:a_c, a_d, b_c, b_d

[root@localhost tmp]# touch {a,b}_{c,d};ll [ab]*

-rw-r--r--. 1 root root 0 9月 2 22:28 a_c

-rw-r--r--. 1 root root 0 9月 2 22:28 a_d

-rw-r--r--. 1 root root 0 9月 2 22:28 b_c

-rw-r--r--. 1 root root 0 9月 2 22:28 b_d

[root@localhost tmp]#

(2)、创建/tmp/mylinux目录下的:

mylinux/

├── bin

├── boot

│   └── grub

├── dev

├── etc

│   ├── rc.d

│   │   └── init.d

│   └── sysconfig

│   └── network-scripts

├── lib

│   └── modules

├── lib64

├── proc

├── sbin

├── sys

├── tmp

├── usr

│   └── local

│   ├── bin

│   └── sbin

└── var

├── lock

├── log

└── run

mkdir -pv mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig,network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/{local,bin,sbin},var,lock,log,run}



4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。

1)文件的元数据信息及查看:

文件的数据分两种:

A、一种元数据(Metadata),既属性数据;

B、另一种就是数据本身数据(data)。

可使用stat命令查看文件的元数据:

[root@localhost ~]# stat passwd 

  File: "passwd"

  Size: 2031 Blocks: 8 IO Block: 4096 普通文件

Device: fd00h/64768d Inode: 803478 Links: 1

Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)

Access: 2018-06-04 15:05:02.009019497 +0800

Modify: 2018-06-04 15:04:59.954019501 +0800

Change: 2018-06-04 15:04:59.954019501 +0800

其中:

file:文件名;

size:文件大小

block:文件占了多少个数据块

IO Block:文件所占数据块的块大小

Device:硬件,既说明该文件在硬盘的那个柱面

Inode:节点号

links:链接

Access(第一个):权限

Uid:该文件所属的属主

Gid:该文件所属的属组

context:安全上下文

Access(第二个):文件上一次的访问时间

Modify:文件上一次修改的时间

Change:文件上一次属性更改的时间

2)修改文件的时间戳信息:

可以使用touch命令更改文件的时间戳:

语法:touch [OPTION]… FILE…

常用选项:

-c: 指定的文件路径不存在时不予创建;

-a: 仅修改access time;

-m:仅修改modify time;

-t:使用指定的日期时间,而非现在的时间;[[CC]YY]MMDDhhmm[.ss];



5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?

  alias:显示当前shell进程所有可用的命令别名

用法 : alias newname="oldname  option" #newname就是命令别名

例如:

[root@localhost ~]# alias tmp="cd /tmp"

[root@localhost ~]# tmp

[root@localhost tmp]# pwd

/tmp

注意:在命令行中新定义的别名,仅对当前shell进程有效,如果想永久有效,要定义配置文件    

对当前用户:~/.bashrc    

对所有用户有效:/etc/bashrc

使用管道符可以引用另一个命令的执行结果,如:

[root@localhost tmp]# cat /etc/passwd|grep root

root:x:0:0:root:/root:/bin/bash

operator:x:11:0:operator:/root:/sbin/nologin

[root@localhost tmp]#

6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。

 find /var  -maxdepth 1 -name "l*[0-9]*[a-z]" -type f  -o -name "l*[0-9]*[a-z]" -type d

7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。

 find /etc  -maxdepth 1  -name "[0-9]*[^0-9]" -type f -o -name "[0-9]*[^0-9]" -type d 

8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。

find /etc -name "[^a-zA-Z][a-zA-Z]*" -type d -o -name "[^a-zA-Z][a-zA-Z]*" -type f

9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。

touch tfile_`date +%Y%m%d%H%M%S`

10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。

cp  -a  p*[^0-9]     /tmp/mytest1 

11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。

cp -a /etc/*.d /tmp/mytest2/

12、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。

  find /etc -name "[lmn]*.conf" -type f -exec cp {} /tmp/mytest3 \;

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,039评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,426评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,417评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,868评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,892评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,692评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,416评论 3 419
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,326评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,782评论 1 316
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,957评论 3 337
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,102评论 1 350
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,790评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,442评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,996评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,113评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,332评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,044评论 2 355

推荐阅读更多精彩内容