第1章 Linux命令基础

1.1 习惯

操作前备份,操作后检查

1.2 简单目录结构

一切从根开始,与windows不同

1.3 规则

[root@znix ~]#
[用户名@主机名 你在哪]#

1.4 重定向符号

特殊符号-重定向符号:泼水

1.4.1 输出重定向

>或1>   标准输出重定向:

先把原文件的内容清空,然后把新的内容放到文件中

>>或1>> 追加输出重定向:

把前面输出的东西输入到后边的文件中,不会清除文件原有内容,只是追加到文件的最后一行

[root@znix ~]# echo clsnedu.com >>clsn.txt
[root@znix ~]# cat clsn.txt
clsnedu.com
[root@znix ~]# echo clsnedu.cn >clsn.txt
[root@znix ~]# cat clsn.txt
clsnedu.cn

2>>  错误追加输出重定向

把命令执行错误的信息追加存放在文件中

2>   错误输出重定向

先把原文件的内容清空,然后把错误信息放到文件中

[root@znix ~]# echa clsnedu.com 2>>clsn.txt

[root@znix ~]# cat clsn.txt
clsnedu.com
-bash: echa: command not found

把错误的内容和正确的信息都放在一个文件中.

[root@znix ~]# echo clsnedu.com   >>clsn.txt  2>>clsn.txt
[root@znix ~]# cat clsn.txt
clsnedu.com
-bash: echa: command not found
clsnedu.com

错误信息:

[root@znix ~]# cho clsnedu.com   >>clsn.txt  2>>clsn.txt
[root@znix ~]# cat clsn.txt
clsnedu.com
-bash: echa: command not found
clsnedu.com
-bash: cho: command not found

简写方式:

[root@znix ~]# cho clsnedu.com   >>clsn.txt  2>&1
[root@znix ~]# cho clsnedu.com &>clsn.txt

1.4.2 输入重定向

<或0< 输入重定向

输入重定向重定向用于改变命令的输入。

当前仅与xargs联用

实例1-1

[root@znix ~]# cat /data/clsn.txt
1 2 3 4 5
[root@znix ~]# xargs -n2 </data/clsn.txt
1 2
3 4
5

<<   追加输入重定向

使用到的地方不多,目前与cat 一起使用。

实例1-2

[root@znix ~]# cat >>/data/clsn.txt<<EOF
I
am
sudent
> EOF

1.5 别名

别名  ==  小名

1、为了省事

2、防止犯错 给危险的linux命令加上别名

1.5.1 查询别名的方法

使用alias命令可以查看系统中都有哪些别名。

[root@znix ~]# alias rm cp mv
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

1.5.2 别名格式

别名时命令的别名,只能给一条命令设置别名。

1.5.3 给rm设置别名

①临时设置

直接在命令行中添加别名,这个别名只能临时使用,断开连接后失效。

[root@znix ~]# alias mv='echo bieyong rm'
[root@znix ~]# alias rm
alias mv='echo bieyong rm'

②永久设置

a)      把别名放到/etc/profile 文件最后一行中去,(全局使用),所有用户都可以使用。

[root@znix ~]# tail -1 /etc/profile
alias rm='echo bieyong rm'

b)      修改 ~/.bachrc 文件,仅对当前用户设置 别名,对其他用户没有作用。

[root@znix ~]# vim  .bashrc

c)      让修改的配置文件生效

使用source命令,使配置文件生效。

[root@znix ~]# source /etc/profile
[root@znix ~]# alias rm
alias rm='echo bieyong rm'

1.5.4 查看

1.5.5 临时取消别名的方法

1)     \  转义符

[root@znix ~]# \cp /mnt/test.txt /tmp/

2)     使用命令的绝对路径

查询命令的绝对路径使用which命令

[root@znix ~]# which cp
alias cp='cp -i'
/bin/cp

#使用方法

[root@znix ~]# /bin/cp /mnt/test.txt /tmp/ 

1.6 相对路径与绝对路径

绝对路径, 只要是以根(/)开始的路径/位置 就是绝对路径.

 /data
/tmp
/etc/sysconfig/network-scripts/ifcfg-eth0

相对路径, 路径的最前面 没有 /, 不是以根开始的路径.

 etc/hosts
etc/sysconfig/network-scripts/ifcfg-eth0

1.6.1 切换当前路径

[root@znix ~]# cd /data/
[root@znix data]# cd /tmp/

1.6.2 显示当前所在位置

[root@znix data]# pwd
/data

1.1 查看Linux版本

1.1.1 系统版本

[root@znix ~]# cat /etc/redhat-release
CentOS release 6.9 (Final)

1.1.2 内核版本

[root@znix ~]# uname -r
2.6.32-696.el6.x86_64

1.1.3 系统架构

[root@znix ~]# uname -m
x86_64

1.2 添加用户、设置密码

1.2.1 添加用户

[root@znix ~]# useradd clsn

1.2.2 设置密码

[root@znix ~]# passwd clsn
Changing password for user clsn. ###修改clsn用户密码
New password:
BAD PASSWORD: it is too simplistic/systematic
BAD PASSWORD: is too simple ###密码太简单
Retype new password:
passwd: all authentication tokens updated successfully(成功).

1.3 切换用户

1.3.1 使用这个用户 切换用户

[root@znix ~]# su - clsn

1.3.2 显示你是谁?

[clsn@znix ~]$ whoami
clsn

1.4 su 与su- 的区别

su只是切换了root身份,但Shell环境仍然是普通用户的Shell

su-连用户和Shell环境一起切换成root身份了。

只有切换了Shell环境才不会出现PATH环境变量错误。

su切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工作目录;而用su -命令切换以后,工作目录变成root的工作目录了。

1.5 关闭selinux

1.5.1 永久生效

修改配置文件: /etc/selinux/config的

[root@znix ~]# vim /etc/selinux/config

/etc/selinux/config 文档内容含义:

#enforcing     selinux默认状态 selinux已经开启,正在运行

#permissive    selinux临时关闭,显示警告

#disabled      selinux彻底关闭

使用sed命令对/etc/selinux/conifg 文件进行修改

sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config

让配置文件的修改生效,使用source命令

[root@znix ~]# source /etc/selinux/config

永久修改的配置生效需要重启服务器。

使用的服务器不可以随意重启!

1.5.2 临时关闭

使用getenforce 命令查看selinux的

[root@znix ~]# getenforce
Enforcing(正在运行)

使用setenforce 命令修改selinux配置临时关闭selinux。

[root@znix ~]# setenforce
usage: setenforce [ Enforcing | Permissive | 1 | 0 ] [root@znix ~]# setenforce 0
[root@znix ~]# getenforce
Permissive(临时关闭)

1.6 关闭防火墙

1.6.1 临时关闭

1)         查询防火墙是否正在运行

[root@znix ~]# /etc/init.d/iptables status

2)         关闭防火墙

a)      一般需要关两次,确保完全关闭。

[root@znix ~]# /etc/init.d/iptables stop
iptables: Setting chains to policy ACCEPT: filter [ OK ]
iptables: Flushing firewall rules: [ OK ]
iptables: Unloading modules: [ OK ] [root@znix ~]# /etc/init.d/iptables stop

3)         检查一下是否关闭

[root@znix ~]# /etc/init.d/iptables status
iptables: Firewall is not running.

1.6.2 永久关闭

确保开机防火墙不再启动

在chkconfig中查找iptables 的行,看他的状态。on是开,off是关。

[root@znix ~]# chkconfig|grep "ipta"
iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off

使用chkconfig的命令关闭iptables

[root@znix ~]# chkconfig iptables off

检查一下是否关闭了。

[root@znix ~]# chkconfig|grep "ipta"
iptables 0:off 1:off 2:off 3:off 4:off 5:off 6:off

1.7 显示乱码解决

1.7.1 查看linux系统字符集

[root@znix ~]# echo $LANG
en_US.UTF-8

1.7.2 查看远程软件的字符集

连接软件的字符集是否与系统的一致

1.7.3 乱码解决办法

1)         linux系统字符集修改

a)      使用export 对变量进行修改

[root@znix ~]# export LANG=en_US.utf8
[root@znix ~]# echo $LANG
en_US.utf8

b)修改配置文件,将/etc/sysconfig/i18n修改为utf-8字符集。

[root@znix ~]# cat /etc/sysconfig/i18n
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"

c)使用source或. /etc/sysconfig/i18n  让配置生效

[root@znix ~]# source /etc/sysconfig/i18n
[root@znix ~]# . /etc/sysconfig/i18n

Linux常用操作详解的更多相关文章

  1. Linux Shell数组常用操作详解

    Linux Shell数组常用操作详解 1数组定义: declare -a 数组名 数组名=(元素1 元素2 元素3 ) declare -a array array=( ) 数组用小括号括起,数组元 ...

  2. Linux常用命令详解下

    Linux常用命令详解 目录 一.Linux常用命令 1.1.查看及切换目录(pwd.cd.ls.du) 1.2.创建目录和文件(mkdir.touch.ln) 1.3.复制.删除.移动目录和文件(c ...

  3. Linux常用命令详解上

    Linux常用命令详解上 目录 一.shell 二.Linux命令 2.1.内部命令与外部命令的区别 2.2.Linux命令行的格式 2.3.编辑Linux命令行的辅助操作 2.4.获得命令帮助的方法 ...

  4. SVN的Windows和Linux客户端操作详解

    SVN的Windows和Linux客户端操作详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Windows客户端操作 1.安装SVN客户端 a>.去官网下载svn软件 ...

  5. Linux常用命令详解—基于CentOS7

    ## Linux 目录- /:根目录,一般只存放目录,不存放文件- /bin -> /usr/bin:可执行二进制文件的目录,也是常用命令目录,如常用的命令 ls.cat.mv 等- /boot ...

  6. Linux常用命令详解(week1_day1_3)--技术流ken

    本节内容 pidofpstopipuptimewgetcurltrddtargrepfind 命令详解 1.pidof 获取正在运行程序的PID 实例1: [root@ken ~]# pidof ss ...

  7. Linux常用命令详解(week1_day1_2)--技术流ken

    本节内容 aliasunaliasunamesuhostnamehistorywhichwcwwhowhoamipingkillseqdudffreedate 命令详解 1. alias 设置.’查看 ...

  8. Linux常用命令详解(week1_day1_1)--技术流ken

    本节内容 基础命令:lsmanpwdcdmkdirechotouchcpmvrmrmdircatmorelessheadtailclearpoweroffreboot进阶命令(下一章节):aliasu ...

  9. Linux常用命令详解(3)

    pidofpstopipuptimewgetcurltrddtargrepfind 命令详解 1.pidof 获取正在运行程序的PID 实例1: [root@ken ~]# pidof sshd 24 ...

随机推荐

  1. poj1456Supermarket——并查集压缩查找

    题目:http://poj.org/problem?id=1456 排序+贪心,每次选利润最大的,放在可能的最靠后的日期卖出,利用并查集快速找到下一个符合的日期. 代码如下: #include< ...

  2. Ubuntu——跟新flash

    使用命令: apt-get install adobe-flashplugin 即可

  3. 当在hive中show&nbsp;table&nbsp;…

    当在hive中show table 时如果报以下错时 FAILED: Error in metadata: javax.jdo.JDODataStoreException: Error(s) were ...

  4. 6. webshell文件上传分析溯源

    这道题也是借助大佬的帮助才成功,具体我们来看: 既然人家扫描发现后台目录有文件上传,我们也不能落后,顺便拿出了传说中的御剑,并进行一波扫描: 发现了几个比较有用的目录,特别是upload1.php跟u ...

  5. 在Android工程中导入外部动态连接库(so文件)

    假设要导入的so文件命为libtest.so,导入的方法如下: 给工程加入Native Support,将libtest.so复制到在jni文件夹下,在Android.mk文件中,加入以下代码: in ...

  6. SmartSql使用教程(2)——使用动态代理实现CURD

    一.引言 接着上一篇的教程,本章我们继续讲SmartSql.今天的主题是动态仓储. 老规矩,先上一个项目结构 从第二章开始.我们将原来的单一项目做了一个分离.方便之后的更新. 在这个结构中.原本上一章 ...

  7. 由一次动态改变font-size的大小引申的一系列困惑补录

    以下结论如有错误,欢迎指正 在切入正题之前,先了解下window 和document这两个大对象 我们熟知 JavaScript的组成如下图所示: window对象和document对象分别属于哪个分 ...

  8. JavaScript中两个数组的拼接

    方法一:使用for循环 var arr = ['tom', 'jerry']; var arr2 = [1, 2]; for(var i=0; i<arr2.length; i++){ arr. ...

  9. Weekly Contest 113

    949. Largest Time for Given Digits (string::compare) Given an array of 4 digits, return the largest ...

  10. IDEA热部署自动重启服务问题

    新接手项目过于庞大,从eclipse果断换成了IDEA.因为IDEA有免费的热部署,咳咳咳... 但是,手贱的我在下面这张状态下,直接OK了,TM,这不是我要的热部署啊,这是重新启动啊,但是勾选了do ...