一般在公司都有遇到要去一台只搭载来一个基本os的lunix服务器上,安装什么软件的情况,而公司环境一般不能直接连外网下载,只能通过文件上传上去,解压,安装等。
1、基本目录操作
命令格式:ls [- 选项][参数]
选项包含下面的的内容以及含义
-
选项 含义 -a all 显示所有文件,包括隐藏文件(以.开头的文件) -l long 长格式显示 可以后附h选项便是人性化显示 -d directory 查看目录属性
-
文件类型 所有者 所属组 其他 -(文件类型) rw-(可读写不可执行) r--(只读) r--(只读) 所占空间以字节为单位,如果想以KB显示使用-lh即可。
-
ls -i
显示文件的节点,类似于C语言的地址一样,一个文件对应一个自己的属性节点。
命令格式: mkdir [-p] 目录名
- mkdir /tmp/liyang
在绝对路径/tmp下创建liyang的文件夹 - mkdir -p /tmp/test/liyang
递归创建,因为我/tmp下没有test文件,所以使用-p就可以直接递归创建。 - mkdir /tmp/liyang /tmp/cangjing
可以一次创建多个目录。
2、使用FTP上传文件
步骤 1: 建立 FTP 连接
想要连接 FTP 服务器,在命令上中先输入然后空格跟上 FTP 服务器的域名 'domain.com' 或者 IP 地址
例如:
步骤 2: 使用用户名密码登录
绝大多数的 FTP 服务器是使用密码保护的,因此这些 FTP 服务器会询问'username'和'password'.
如果你连接到被称作匿名 FTP 服务器(LCTT 译注:即,并不需要你有真实的用户信息即可使用的 FTP 服务器称之为匿名 FTP 服务器),可以尝试作为用户名以及使用空密码:
之后,终端会返回如下的信息:
登录成功。
FTP 登录成功
步骤 3: 目录操作
FTP 命令可以列出、移动和创建文件夹,如同我们在本地使用我们的电脑一样。可以打印目录列表,可以改变目录,可以创建文件夹。
使用安全设置列出目录
服务器将返回:
打印目录
改变目录:
改变目录可以输入:
服务器将会返回:
步骤 4: 使用 FTP 下载文件
在下载一个文件之前,我们首先需要使用命令设定本地接受目录位置。
如果你不指定下载目录,文件将会下载到你登录 FTP 时候的工作目录。
现在,我们可以使用命令 get 来下载文件,比如:
文件会保存在使用lcd命令设置的目录位置。
服务器返回消息:
使用FTP下载文件
下载多个文件可以使用通配符及 命令。例如,下面这个例子我打算下载所有以 .xls 结尾的文件。
步骤 5: 使用 FTP 上传文件
完成 FTP 连接后,FTP 同样可以上传文件
使用 命令上传文件:
当文件不再当前本地目录下的时候,可以使用绝对路径:
同样,可以上传多个文件:
步骤 6: 关闭 FTP 连接
完成FTP工作后,为了安全起见需要关闭连接。有三个命令可以关闭连接:
任意一个命令可以断开FTP服务器连接并返回:
3、对文件的操作
此命令只能删除空白目录
命令格式: rmdir 目录的路径
rmdir /tmp/liyang
命令格式: cp -rp [源文件] [目标文件]
- 空格/f: 向下翻页
- 回车: 换行
- q或者Q: 推出
但是more命令只能向下翻页,不能向上翻页,所以less命令可以向下或者向上翻页。
less除了包含上面的使用方法还包含:
- PagOn: 向上翻页
- 上箭头: 向上换行
4、对权限和用户的认识和操作
在Linux中的每个用户必须属于一个组,不能独立于组之外,在linux中每个文件有 、、 的概念。
1)所有者
2)所在组
3)其它组
4)改变用户所在组
指令
groupadd 组名:增加一个新的用户组
-g:指定用户组标识号GID
-o:一般与-g一起使用,表示新用户组的GID可以与已有用户组GID相同
示例:
- groupadd group1:增加一个用户组group1,GID是在当前已有GID最大值上加1
- groupadd -g 101 group1:增加一个用户组group1,并指定其GID为101
groupdel 组名:组名不存在时会提示错误信息。
在添加用户时,可以指定将用户添加到哪个组,可以用root的权限改变用户所在的组。
usermod -g 用户组 用户名
usermod -d 目录名 用户名 改变该用户登录的初始目录
/etc/passwd:
- 用户的配置文件,记录用户的各种信息
- 每行含义,用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell
- wansw:x: 1001: 1001: : /home/wansw: /bin/bash
/etc/shadow
- 口令的配置文件
- 每行含义,登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
/etc/group
- 组的配置文件,记录Linux包含的组的信息
- 每行含义,组名:组标识号:组内用户列表
查看文件的所有者
ls -ahl:-rw-r--r-- 1 root root 162 Jul 6 2018 1.log
第一个root:所属用户
第二个root:用户所属组
chgrp,采用群组名或群组识别码GID的方式改变文件或目录的所属群组,超级用户使用。被改变的组名必须在/etc/group文件内存在
-c:当发生改变时输出调试信息
-f:不显示错误信息
-R:处理指定目录及其下所有子目录、子文件
-v:运行时显示详细处理信息
例如:
chgrp -v bin log1.log:将log1.log的群组改为bin,并显示详细处理信息
chgrp --reference=log2.log log1.log:改变log1.log群组属性,使之参考log2.log
chgrp -R bin test:改变test下所有目录及其子目录的群组属性为bin
chgrp -R 100 test:根据群组识别码GID改变test群组属性
chgrp polic orange.txt:把文件的所属组改成 polic
chown,改变文件的拥有者与群组,拥有者可用用户名或用户ID、群组可用组名或组ID。chown命令的操作权限一般为系统管理员,系统管理员常将文件拷贝到另一用户目录名下,使之拥有使用该文件的权限
-c:显示更改的部分信息
-f:忽略错误信息
-R:处理指定目录及其下所有子目录、子文件
-v:显示详细处理信息
例如:
chown mail:mail log1.log:改变log1.log的拥有者与所属群组为mail
chown :mail log1.log:改变log1.log的文件群组为mail
chown -R -v root:mail test6:改变test6文件夹及其下所有文件/文件夹的所有者为root,群组为mail,修改时显示处理信息。
-rw-r--r-- 1 root root 162 Jul 6 2018 1.log
-
0:确定文件类型。
- d:目录
- - :普通文件
- l:软链接
- c:字符设备【键盘、鼠标等】
- b:块文件【硬盘】
-
1-3:确定文件的所有者拥有的权限---User。
-
4-6:确定所属组的用户拥有的权限--Group。
-
7-9:确定其他用户拥有的权限--Other User。
-
10:
- 第一位是目录:表示 该目录下的子目录数量【包含有隐藏目录数量】。
- 第一位是文件:表示硬链接数。
-
第一个root:所属用户
-
第二个root:文件所在组
-
162:表示文件大小
- 如果是目录,此处显示 4096。
-
Jul 6 2018:最后修改时间
rwx权限说明
- 作用到文件上:
- r:可读
- w:可写,只有对该文件所在目录有写权限,才可以对文件进行删除。
- x:可以执行
- 作用到目录:
- r:可读,ls 命令可以查看目录内容
- w:可以修改,目录内新增+删除+重命名目录
- x:可以进入该目录
- 可以用数字表示权限:
- r:4
- w:2
- x:1
chmod,用于改变Linux系统文件或目录的访问权限
-f:错误信息不输出
-c:当发生改变时,报告处理信息
-R:处理执行目录及其子目录下所有文件
-v:运行时显示详细处理信息
<权限范围>+<权限设置>:使权限范围内的目录或文件具有指定权限
<权限范围>-<权限设置>:删除权限范围内的目录或文件的指定权限
<权限范围>=<权限设置>:设置权限范围内的目录或文件的权限为指定的值
例如:
chmod a+x log1.log:设定文件log1.log所有用户或群组都有执行权限
chmod ug+x,o-x log1.log:同时设定不同的用户权限
chmod u=x log1.log:撤销用户原有对log1.log的权限并设定为x
chmod -R u+x test4:递归地给test4下所有文件与子目录分配执行权限
chmod 751 file:给file、属主分配读、写、执行权限,给所在组分配读、执行权限,其他用户分配执行权限
chmod tom apple.txt:把 apple.txt 文件 的所有者转给 tom 用户
5、编辑文件
所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。
但是目前我们使用比较多的是 vim 编辑器。
vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。
基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。 这三种模式的作用分别是:
命令模式:
用户刚刚启动 vi/vim,便进入了命令模式。
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。
以下是常用的几个命令:
- i 切换到输入模式,以输入字符。
- x 删除当前光标所在处的字符。
- : 切换到底线命令模式,以在最底一行输入命令。
若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。
命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。
输入模式
在命令模式下按下i就进入了输入模式。
在输入模式中,可以使用以下按键:
- 字符按键以及Shift组合,输入字符
- ENTER,回车键,换行
- BACK SPACE,退格键,删除光标前一个字符
- DEL,删除键,删除光标后一个字符
- 方向键,在文本中移动光标
- HOME/END,移动光标到行首/行尾
- Page Up/Page Down,上/下翻页
- Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
- ESC,退出输入模式,切换到命令模式
底线命令模式
在命令模式下按下:(英文冒号)就进入了底线命令模式。
底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。
在底线命令模式中,基本的命令有(已经省略了冒号):
- q 退出程序
- w 保存文件
按ESC键可随时退出底线命令模式。
简单的说,我们可以将这三个模式想成底下的图标来表示:
使用 vi/vim 进入一般模式
如果你想要使用 vi 来建立一个名为 runoob.txt 的文件时,你可以这样做:
直接输入 vi 文件名 就能够进入 vi 的一般模式了。请注意,记得 vi 后面一定要加文件名,不管该文件存在与否!
按下 i 进入输入模式(也称为编辑模式),开始编辑文字
在一般模式之中,只要按下 i, o, a 等字符就可以进入输入模式了!
在编辑模式当中,你可以发现在左下角状态栏中会出现 –INSERT- 的字样,那就是可以输入任意字符的提示。
这个时候,键盘上除了 Esc 这个按键之外,其他的按键都可以视作为一般的输入按钮了,所以你可以进行任何的编辑。
按下 ESC 按钮回到一般模式
好了,假设我已经按照上面的样式给他编辑完毕了,那么应该要如何退出呢?是的!没错!就是给他按下 Esc 这个按钮即可!马上你就会发现画面左下角的 – INSERT – 不见了!
在一般模式中按下 :wq 储存后离开 vi
OK,我们要存档了,存盘并离开的指令很简单,输入 :wq 即可保存离开!
OK! 这样我们就成功创建了一个 runoob.txt 的文件。
除了上面简易范例的 i, Esc, :wq 之外,其实 vim 还有非常多的按键可以使用。
第一部分:一般模式可用的光标移动、复制粘贴、搜索替换等
『:100,200s/vbird/VBIRD/g』。(常用)
第二部分:一般模式切换到编辑模式的可用的按钮说明
i 为『从目前光标所在处输入』, I 为『在目前所在行的第一个非空格符处开始输入』。 (常用)
a 为『从目前光标所在的下一个字符处开始输入』, A 为『从光标所在行的最后一个字符处开始输入』。(常用)
这是英文字母 o 的大小写。o 为在目前光标所在的下一行处输入新的一行; O 为在目前光标所在的上一行处输入新的一行!(常用)
r 只会取代光标所在的那一个字符一次;R会一直取代光标所在的文字,直到按下 ESC 为止;(常用)
第三部分:一般模式切换到指令行模式的可用的按钮说明
『:! ls /home』即可在 vi 当中察看 /home 底下以 ls 输出的档案信息!
vim 环境的变更
特别注意,在 vi/vim 中,数字是很有意义的!数字通常代表重复做几次的意思! 也有可能是代表去到第几个什么什么的意思。
举例来说,要删除 50 行,则是用 『50dd』 对吧! 数字加在动作之前,如我要向下移动 20 行呢?那就是『20j』或者是『20↓』即可。
参考文献:写完发现这个上面已经写的很全了,只是记录如有引用您的文章,请联系我