Linux常用操作详解
第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常用操作详解的更多相关文章
- Linux Shell数组常用操作详解
Linux Shell数组常用操作详解 1数组定义: declare -a 数组名 数组名=(元素1 元素2 元素3 ) declare -a array array=( ) 数组用小括号括起,数组元 ...
- Linux常用命令详解下
Linux常用命令详解 目录 一.Linux常用命令 1.1.查看及切换目录(pwd.cd.ls.du) 1.2.创建目录和文件(mkdir.touch.ln) 1.3.复制.删除.移动目录和文件(c ...
- Linux常用命令详解上
Linux常用命令详解上 目录 一.shell 二.Linux命令 2.1.内部命令与外部命令的区别 2.2.Linux命令行的格式 2.3.编辑Linux命令行的辅助操作 2.4.获得命令帮助的方法 ...
- SVN的Windows和Linux客户端操作详解
SVN的Windows和Linux客户端操作详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Windows客户端操作 1.安装SVN客户端 a>.去官网下载svn软件 ...
- Linux常用命令详解—基于CentOS7
## Linux 目录- /:根目录,一般只存放目录,不存放文件- /bin -> /usr/bin:可执行二进制文件的目录,也是常用命令目录,如常用的命令 ls.cat.mv 等- /boot ...
- Linux常用命令详解(week1_day1_3)--技术流ken
本节内容 pidofpstopipuptimewgetcurltrddtargrepfind 命令详解 1.pidof 获取正在运行程序的PID 实例1: [root@ken ~]# pidof ss ...
- Linux常用命令详解(week1_day1_2)--技术流ken
本节内容 aliasunaliasunamesuhostnamehistorywhichwcwwhowhoamipingkillseqdudffreedate 命令详解 1. alias 设置.’查看 ...
- Linux常用命令详解(week1_day1_1)--技术流ken
本节内容 基础命令:lsmanpwdcdmkdirechotouchcpmvrmrmdircatmorelessheadtailclearpoweroffreboot进阶命令(下一章节):aliasu ...
- Linux常用命令详解(3)
pidofpstopipuptimewgetcurltrddtargrepfind 命令详解 1.pidof 获取正在运行程序的PID 实例1: [root@ken ~]# pidof sshd 24 ...
随机推荐
- poj1456Supermarket——并查集压缩查找
题目:http://poj.org/problem?id=1456 排序+贪心,每次选利润最大的,放在可能的最靠后的日期卖出,利用并查集快速找到下一个符合的日期. 代码如下: #include< ...
- Ubuntu——跟新flash
使用命令: apt-get install adobe-flashplugin 即可
- 当在hive中show table …
当在hive中show table 时如果报以下错时 FAILED: Error in metadata: javax.jdo.JDODataStoreException: Error(s) were ...
- 6. webshell文件上传分析溯源
这道题也是借助大佬的帮助才成功,具体我们来看: 既然人家扫描发现后台目录有文件上传,我们也不能落后,顺便拿出了传说中的御剑,并进行一波扫描: 发现了几个比较有用的目录,特别是upload1.php跟u ...
- 在Android工程中导入外部动态连接库(so文件)
假设要导入的so文件命为libtest.so,导入的方法如下: 给工程加入Native Support,将libtest.so复制到在jni文件夹下,在Android.mk文件中,加入以下代码: in ...
- SmartSql使用教程(2)——使用动态代理实现CURD
一.引言 接着上一篇的教程,本章我们继续讲SmartSql.今天的主题是动态仓储. 老规矩,先上一个项目结构 从第二章开始.我们将原来的单一项目做了一个分离.方便之后的更新. 在这个结构中.原本上一章 ...
- 由一次动态改变font-size的大小引申的一系列困惑补录
以下结论如有错误,欢迎指正 在切入正题之前,先了解下window 和document这两个大对象 我们熟知 JavaScript的组成如下图所示: window对象和document对象分别属于哪个分 ...
- JavaScript中两个数组的拼接
方法一:使用for循环 var arr = ['tom', 'jerry']; var arr2 = [1, 2]; for(var i=0; i<arr2.length; i++){ arr. ...
- Weekly Contest 113
949. Largest Time for Given Digits (string::compare) Given an array of 4 digits, return the largest ...
- IDEA热部署自动重启服务问题
新接手项目过于庞大,从eclipse果断换成了IDEA.因为IDEA有免费的热部署,咳咳咳... 但是,手贱的我在下面这张状态下,直接OK了,TM,这不是我要的热部署啊,这是重新启动啊,但是勾选了do ...