Linux

目录

Linux基本命令

清理屏幕

创建用户

切换用户

主机名称

查看主机名称

设置主机名称

关机

重启

文件类型、权限和归属

文件类型

文件权限

文件的归属

权限命令chmod、文件所属用户和组改变权限命令

如何设置文件对不同用户的权限

文件拷贝

改变文件拥有者和所属组

针对一个目录设置权限,目录中有许多文件需要权限设置

针对目录改变拥有者和所属组

文件的两种创建方式、VI常用快捷键和文件常用操作

文件创建

对文件内容进行追加

编辑文件内容快捷键

查看文件内容的几种常见方式

文件的拷贝、移动、重命名和删除

文件的拷贝、移动和重命名

文件的删除

文件的链接

文件搜索

Linux系统管理

磁盘管理命令和内存查看命令

Linux下软件的安装方式

第一种方式  RPM命令

第二种方式 tar 源码编译 不推荐

第三种方式 yum

设置普通用户的sudo权限和启动关闭系统防火墙

Linux自带定时调度Crontab

Shell编程基础

变量的声明、引用和作用域

位置参量的使用和命令执行状态码

数组、date和cal命令讲解

数组

date命令

cal命令

判断表达式和if语句

for循环和while循环

for循环

while循环


虚拟化工具VMWare

Linux基本命令

清理屏幕

clear

创建用户

useradd 名称

设置密码 passwd 密码

切换用户

root用户切换到普通用户,不需要输入密码,反之需要

$ su - 名称

显示当前用户所在的目录,查看当前工作路径

$ pwd

主机名称

查看主机名称

$ hostname

设置主机名称

hostname 名称  但是重启会还原,要永久性改变主机名称,再输入 cat /etc/sysconfig/network

关机

halt

重启

reboot 或者init 6

文件类型、权限和归属

查看文件  ls 

-a 显示所有文件,包括隐藏文件;

-l 详细信息显示;

-d 仅显示目录名,而不显示目录下的内容列表;

-h 人性化显示(hommization);

-i 查看任意一个文件的i节点(类似于身份证唯一信息);

-t 用文件和目录的更改时间排序;可以用第一个显示的文件判断最近修改的文件

cd /home  进入'/home'目录

cd .. 返回上一级目录

cd ../.. 返回上两级目录

文件类型

文件 -

目录(类似WIN7下的文件夹)d

连接(类似WIN7下的快捷方式)l

文件权限

可读r

可写w

可执行(脚步,比如shell脚本)x

-表示没有任何权限

权限的数字表示方法:二进制数字之和的方式进行表示

r 2^2 w 2^1 x 2^0

文件的归属

拥有者 u

属于组 g

其他人 o

权限命令chmod、文件所属用户和组改变权限命令

man cmdName 查看某个命令的意思和用法 

Tab键可以补全命令行

如何设置文件对不同用户的权限

 需要使用root用户

#chmod 命令 

chmod g-w 文件名

chmod o-r 文件名   对于同组用户来说,仅仅可读,对于其他用户不可读不可写

还可以通过数字形式实现以上需求

chmod 664 文件名

文件拷贝

$ cp 文件名

改变文件拥有者和所属组

chown 新的拥有者 文件目录

chgrp 新的组 目录

针对一个目录设置权限,目录中有许多文件需要权限设置

-R 递归 

chmod -R 664 目录

针对目录改变拥有者和所属组

chown -R 新的拥有者 目录

文件的两种创建方式、VI常用快捷键和文件常用操作

文件创建

第一种

使用touch命令创建文件

touch test.data

使用vi/vim方式编辑文件

vi/vim test.data 开始编辑 然后点ESC按键,输入:wq保存

第二种

输入vi test.txt创建并且进入编辑状态  点ESC按键,输入:wq保存

对文件内容进行追加

ehco '追加的内容' >> test.txt  可以实现追加内容到文件

编辑文件内容快捷键

vi test.txt进入编辑状态 点ESC进入查看模式

dd:表示删除光标所在的行

ZZ:表示保存文件内容  也可以 :wq 保存

x:表示将光标处的字符删除

o: 在光标的下一行进行插入

首先需要知道vi编辑器有3种基本工作模式,分别是:命令模式、文本输入模式、和末行模式。

第一:命令行模式:该模式是进入vi编辑器后的默认模式。任何时候,不管用户处于何种模式,按下ESC键即可进入命令模式。在该模式下,用户可以输入vi命令,用户管理自己的文档。此时从键盘上输入的任何字符都被当作编辑命令来解释。若输入的字符是合法的vi命令,则vi在接受用户命令之后完成相应的动作。但需要注意的是,所输入的命令并不回显在屏幕上。若输入的字符不是vi命令,vi会响铃报警。

第二:文本输入模式:在命令模式下输入命令i、附加命令a、打开命令o、修改命令c、取代命令r或替换命令s都可以进入文本输入模式。在该模式下,用户输入的任何字符都被vi当作文件内容保护起来,并将其显示在屏幕上。在文本输入过程中,若想回到命令模式下,按ESC键即可。

第三:末行模式:末行模式也称ex转义模式。在命令模式下,用户按“:”键即可进入末行模式下,此时vi会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个“:”作为末行模式的说明符,等待用户输入命令。多数文件管理命令都是在此模式下执行的(如把编辑缓冲区的内容写到文件中等)。末行命令在执行完后,vi自动回到命令模式。如果要从命令模式转换到编辑模式,可以键入a或者i。如果需要从文本模式返回,则按ESC即可。在命令模式下输入“:”即可切换到末行模式,然后输入命令。

末行模式下:q! 【 内容被修改 不保存】 q【内容没有修改 不保存】 wq【退出并保存】 
(2)如果你不想保存直接退出有可以在命令模式下使用“ctrl+z”快捷键或者按住“shift”键,输入两个z即可退出。

(转载自https://www.cnblogs.com/longchuqianyuan/p/11163933.html

查看文件内容的几种常见方式

cat 文件目录   查看文件全部内容,适用于文件内容少

more 翻页查看

tail -200 文件目录  看最后两百行

head 看文件开头,查看处理文件的格式,内容模板样式

文件的拷贝、移动、重命名和删除

文件的拷贝、移动和重命名

拷贝一个文件到一个目录

$ cp 文件名称 目录名称

拷贝一个文件到另一个文件

$ cp 文件名称 另一个文件名称(新文件)
拷贝一个目录到另一个目录

$ cp -r 目录1 目录2

创建目录

$ mkdir 目录名称

多级目录创建

$ mkdir -p 多级目录

移动

mv 文件/目录1 文件/目录2

重命名

mv 文件/目录1 文件/目录2 如果在12在同一个目录就是重命名,不在就是移动

文件的删除

$ rmdir test-dir

rmdir 注意删除的目录必须是空目录

$ rm -rf src 使用的时候,src最好是绝对路径(准确的路径目录),确定好再删除

文件的链接

类似于快捷方式

软连接 和 硬连接区别在于删除链接时是否删除源文件

创建软连接

$ ln -s 目录文件 链接名称

创建硬连接

$ ln 目录文件 链接名称   硬连接就相当于拷贝一个文件

文件搜索

find ~/ -name 文件名称 从当前目录下搜索文件名称

find / - name 文件名称 从根目录下搜索文件名称

文件名称如果记不清,可以写abc\*  \*是转义字符,表示abc开头的文件

Linux系统管理

查看进程 ps

杀死进程 kill pid号

磁盘管理命令和内存查看命令

$ uname    系统版本

$ uname -r   内存版本

$ cat /proc/cpuinfo    cpu信息

$ cat /proc/meminfo    内存信息

$ date   $ date -R    查看时间

$ cal 年份     日历

date -s 2015-09-30

date -s 14:42:50     设置日期和时间

df -lh     磁盘信息

du  -sh 目录     目录下面空间大小

fdisk -l    磁盘信息

fsck 目录      修复磁盘,自动修复

mount     查看挂载磁盘信息

mount 目录      挂载磁盘目录

umount 目录    卸载目录

free -m      看系统内存使用情况

top  各个进程内存的使用情况    M:详细信息

Linux下软件的安装方式

第一种方式  RPM命令

检查某个软件是否安装,比如说java

# rpm -qa|grep java

卸载已安装软件

# rpm -e --nodeps 软件名称

安装软件

# rpm -ivh 软件名称.rpm

第二种方式 tar 源码编译 不推荐

zip 软件

解压

$ unzip xxx.zip

压缩

$ zip 压缩后的名称.zip 待压缩的文件名称

tar软件

解压 

到当前目录 $ tar -zxvf xxx.tar.gz

到指定目录 $ tar -zxvf xxx.tar.gz -C 目录 

压缩

$ tar -zcvf zzz.tar.gz 目录

第三种方式 yum

需要配置源,软件包依赖关系,以及各软件包安装顺序

设置普通用户的sudo权限和启动关闭系统防火墙

不需要输入密码进入用户,直接在命令前输入sudo就可以执行

$ su 切换到root用户

# vi /etc/sudoers

在第一行添加如下内容

用户名 ALL=(root)NOPASSWD:ALL

查看防火墙是否关闭

$ sudo service iptables status

关闭防火墙

$ sudo service iptables stop

启动防火墙

$ sudo service iptables start

永久性设置防火墙关闭/开启

$ sudo chkconfig iptables off|on

再次开启http

$ sudo chkconfig httpd on

防火墙和SELINUX都需要禁用

Linux自带定时调度Crontab

针对用户

每个用户都可以调度自己的任务

crontab基本定义

* * * * * command

Shell编程基础

变量的声明、引用和作用域

shell程序:以文本文件形式存放批量Linux命令集合

第一行

指定用哪个程序编译和执行脚本

#!/bin/bash 或者#!bin/sh

shell脚本中除了第一行的# 其他#都表示注释行

变量名必须字母或者下划线开头,后面跟字母数字下划线 区分大小写

x=123

echo ${x}   

>>>123

echo x

>>>x

变量类型:本地变量只能在创建它的shell程序中可用,环境变量也叫全局变量,大写,都可以用

变量赋值:等号两边不能有空格,如果要赋空值,在等号后面跟一个换行符

显示变量的值:echo $variable echo ${variable}

清除变量:unset variable

显示所有变量:set

位置参量的使用和命令执行状态码

位置参量是特殊的内置变量,通常被shell脚本用来从命令行接受参数,或被函数用来保存传递它的参数

执行脚本时,用户通过命令行向脚本传递信息,跟在脚本后面的用空格隔开每个字符串都是位置参量

脚本中使用这些参数,通过位置参量引用,$1表示第一个参数,$2表示第二个参数,但是第十个开始要${10}

例如:

echo "hello $1"

执行脚本时,$ ./test.sh world

>>>hello world

$0 当前脚本名称

$# 位置参数个数

$* 以单字符串显示所有的位置参量

$$ 脚本运行的当前进程号

$! 最后一个后台运行的进程号

$? 显示前面最后一个命令的退出状态 0表示没有错误

如果位置参量中有空格,需要使用双引号

退出码

任何命令进行时都会返回一个退出状态,查看命令:echo $?

应用中通常在关键步骤后判定,确定关键步骤执行正常,

程序控制返回码 exit N 为0成功,无错误 不为0,失败,某处有错误

if [ $? != 0];then

     exit 1

数组、date和cal命令讲解

数组

数组定义 arr=(a b c)

echo ${arr[0]}

>>>a

echo ${#arr[*]}

>>>3   数组里面有三个数

arr[0]=d   改变数组第一个值

date命令

#!/bin/bash

date1=$(date)

echo ${date1}

>>>得到时间

cal命令

cal 2016

cal 09 2016

判断表达式和if语句

关于文件的判断

test -e filename 判断该名称是否存在

-f 是否存在该名称且为档案

-d 是否存在该名称且为目录

-r 是否存在名称且可读

-w ....可写

-x ...可执行

关于两个整数之间的判断 

-eq 两个数相等  test n1 -eq n2

-ne 不相等

-gt n1大于n2

-lt 小于

-ge 大于等于

-le 小于等于

判断字符串数据

test -z string 判断字符串是否为0,为空字符串为true

test -n string 是否非0

test str1 = str2

test str1 != str2

也可以用判断符合[] 进行判断

[ -z "$abc" ]; echo '=='  如果abc这个文件为空(等于0)就打印==

[ -z "$abc" ] 左右中括号里面各有一个空格,z后面不要有空格

if判断

if [ 条件判断式 ];then

          当条件判断成立时,执行的指令

fi

点+空格+“脚本名称” 执行这个脚本

多重复杂判断

if [ 条件判断式 ];then

          当条件判断成立时,执行的指令

elif [ 条件判断式 ];then

          当条件判断成立时,执行的指令

else

          当条件判断成立时,执行的指令

fi

for循环和while循环

for循环

for var in 1 2 3 4 5

do

       echo ${var}        打印每个值

done

num=10

s=0

for ((i=0;i<${num};i=i+1))

do

       s=$((${s}+${i}))

done

echo ${s}

while循环

while [ 条件判断式 ]

do

       程序段落

done

另一种方式

until [ 条件判断式 ]

do

      程序段落

done

逐行读取文件

cat ${文件名} | while read line

do

     echo ${line}

done

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值