文章目录
- ***1.解压和压缩的命令***
- ***2.Linux中的一些特殊变量。***
- ***3.LINUX中trap的作用。***
- ***4.Linux中rename命令的用法***
- ***5.服务器之间传输scp命令的使用***
- ***6.hadoop安装前的相关操作***
- ***7.安装JDK***
- ***8.安装HADOOP***
- ***9.Linux的一些命令:***
- ***10. hosts文件的解释:***
- ***11.linux中查看系统资源情况的命令sar?***
- ***12.sftp的用法:***
- ***13.在服务器上查询oracle错误码的原因?***
- ***14.在Linux上安装DBI,DBD报错的处理方法?***
- ***15.Linux如何新增用户并增加组?***
- ***16.网络文件系统NFS是什么,有什么作用吗?***
- ***17.将一个用户添加到某一用户组中***
- ***18.Linux下通过rm -rf 删除大量文件的时候报错:Argument list too long***
- ***19.如何在SecureCRT中进入图形化的界面?***
- ***20.设置ssh 上来能不自动断线?***
- ***21、向登陆到同一台服务器上的所有用户发一条信息***
- ***22、压缩传输文件或目录?***
- ***23.如何查询Linux服务器的系统启动时间和运行时间?***
- ***24.虚拟机不能访问网络的方法?***
- ***25.如何查看CPU的相关信息?***
- ***26.linux系统中/etc/hosts.allow和/etc/hosts.deny?***
- ***27. daemon的启动脚本与启动方式?***
- ***28.如何查找一个命令执行顺序的详细信息?***
- ***29.中文编码的问题?***
- ***30.java命令执行jar包的方式?***
- ***31.grep精确匹配某一字符串?***
- ***32.linux环境oraclesqlplus下使用退格backspace回删出现^H的解决办法?***
- ***33.Linux中的test命令?***
- ***34.Linux中sz命令的使用?***
- ***35.Linux中sed命令的用法?***
- ***36.Linux中查找文件中的内容?***
- ***37.centos系统中如何停止防火墙?***
- ***38.linux系统如何修改LANG的值?***
- ***39.linux系统如何查看端口的占用情况?***
1.解压和压缩的命令
解压缩的命令:tar -xzvf 要解压的文件名
压缩的命令:tar -czvf 压缩后的文件名 要压缩的文件
如何解压.zip压缩包?
unzip filename.zip
如何解压.gz的压缩包?
gunzip filename.gz
gzip -d filename.gz
如何解压.bz2压缩包?
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName
2.Linux中的一些特殊变量。
$0 : 脚本的名称或者脚本的路径
$? : 显示最后命令的退出状态。 0表示没有错误,其他任何值表明有错误
$# : 输入参数的个数
$@ : 输入的所有参数的值
$! :代表最后执行的后台命令的PID
3.LINUX中trap的作用。
例子,trap “stopWorkFlow” SIGINT SIGQUIT SIGTERM
当shell接收到SIGINT SIGQUIT SIGTERM 这几个命令时,当前执行的程序会读取参数stopWorkFlow 并将它作为命令执行。
4.Linux中rename命令的用法
rename 20150710 20150915 CKMXCX
第一个参数:被替换掉的字符串
第二个参数:替换成的字符串
第三个参数:匹配要替换的文件模式
5.服务器之间传输scp命令的使用
scp LSXD* oracle@110.63.1.29:/HRB_DX
6.hadoop安装前的相关操作
网卡ip的重启:service network restart
服务器的防火墙
关闭防火墙:service iptables stop
查看防火墙状态:service iptables status
关闭防火墙的自动运行:chkconfig iptables off
验证:chkconfig --list | grep iptables
设置主机名
显示主机名:hostname 修改主机名:hostname 修改后的名字
想永久修改主机名的话要修改配置文件:vi /etc/sysconfig/network
ip和hostname绑定
vi /etc/hosts
验证 ping 主机名
7.安装JDK
执行命令 (1)cd /user/local 安装包的目录
(2)chmod u+x jdk… JDK赋执行权限
(3)./jdk…bin 解压JDK
(4)mv 解压后的文件名 jdk
(5)vi /etc/profile 增加内容如下: (配置jdk的环境变量路径)
export JAVA_HOME=/user/local/解压后的文件夹名称jdk
export PATH=.:
J
A
V
A
H
O
M
E
/
b
i
n
:
JAVA_HOME/bin:
JAVAHOME/bin:PATH
(6)刷新修改完的profile文件 source /etc/profile
验证安装完的JDK有效的方法:在文件的bin文件夹内执行java -version
8.安装HADOOP
解压完以后进入文件夹以后有几个命令注意一下
bin: 所有命令 conf: 配置文件 lib:jar包 src:源代码
要想执行HADOOP命令需要在PATH中配置路径
9.Linux的一些命令:
(1)Linux无密码登录
在A服务器上执行 ssh-keygen -t rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.0.3 --将192.168.0.3的密钥拷贝到当前主机下
在哪一个用户进行的操作就只能在一个用户下进行无密码登录,其他用户不可以。
SSH隧道:远端接口转发
ssh -f -NT -R 9000:10.0.0.1:80 192.168.0.1
这里192.168.0.1 是SSH服务器
将该服务器的9000端口映射到本地10.0.0.1的80口
远端的服务器就能通过SSH服务器的9000端口访问本地网络192.168.0.1的80口
(2)在LINUX中撤销和删除全部内容的快捷键是什么?
在命令模式按一下u就可以了
在命令模式中将光标移至首行按一下dG就可以删除文件中的所有内容了
(3)在Linux中如何比较两个文件的不同?
vim -d hello.py hello_bak.py 这个命令可以把两个文件列出来类似与compare工具
diff hello.py hello_bak.py 这个命令也是可以的但是不如上一个详细只能列出两个文件不一样的地方
(4)如何查看linux服务器的ip地址?
如果是root用户的话直接用ifconfig 如果是别的用户的话可以用/sbin/ifconfig或者/sbin/ip address这个命令查看一下
(5)在xshell中如何关闭服务器?
必须要用root用户登录然后执行shutdown -h now 就可以直接将服务器关掉了,
可以用reboot -h now这个命令重启服务器。
(6)在Linux的vi的一般模式中CTRL+G就可以显示文件路径和文件名
(7)关于ssh服务的相关知识
ifconfig + 网卡名:可以查看开启状态的网卡的IP地址(看不到关闭状态的网卡设备)
ip a:可以查看所有网卡的IP地址(还能看到关闭状态的网卡)
ip link:可以查看所有网卡的物理状态
ifup/ifdown + 网卡名:通过网卡配置文件来开启和关闭网卡设备
ifconfig 网卡名 up/down:直接关闭和开启网卡设备。
通过kill + Pid号 或者pkill + 服务名称 来杀掉进程
sshd服务的配置文件路径:/etc/ssh/sshd_config
网卡的配置文件路径:/etc/sysconfig/network-scripts/ifcfg-网卡名
netstat -antup或ps -ef :可以用来查看当前服务器开启的所有服务
ssh -oStrictHostKeyChecking=no cognos@22.224.66.44 "
@
"
−
−
@" --
@"−−@ 代表接收所有的参数 本身这个命令是远程执行命令,完成执行之后离开
-oStrictHostKeyChecking=no 代表不需要检查hostkey(不用输入yes)
比如:ssh cognos@22.224.66.44 “hostname;ls -lrt;cp . .” 这个就是在各个集群上可以执行你输入的命令
(8)netstat -tunlp | grep 9300 这个可以查看一下端口是否被占用以及用到的进程号。
(9)关于linux映射的知识
ln -s 源 快捷方式
删除Linux软连接的方式:rm -rf 快捷方式
(10)如何用非交互式模式修改linux用户的密码?
echo “123456” | passwd --stdin “hxabs”
(11)如何查看linux操作系统的信息?
lsb_release -a
(12)sudo命令的用法?
sudo是一个暂时使用root用户执行命令的命令,通常是需要密码的,有效时间在5分钟左右,如果想要免密码使用的话需要在/etc/sudoers这个文件中找到root ALL=(ALL) ALL 这一行下面按照格式增加用户,比如 oracle ALL=(ALL) NOPASSWD:ALL就可以了。
(13)linux中的rsync命令的用法和实例?
rsync -av --delete /home/dbadmin/mtx/ /home/hxabs/mtx/
将/home/dbadmin/mtx/这个目录下的东西同步到/home/hxabs/mtx/这个目录下,–delete表示删除目标目录原来的东西,保持完全一致。
(14)关于linux操作系统如何修改hostname的方法?
suse的操作系统修改hostname需要修改/etc/HOSTNAME
redhat的操作系统需要修改/etc/sysconfig/network中的hostname
10. hosts文件的解释:
Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,
其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,
当用户在浏览器中输入一个需要登录的网址时,
系统会首先自动从Hosts文件中寻找对应的IP地址,
一旦找到,系统会立即打开对应网页,
如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。
如果我们想提升网页的访问速度的话,可以在hosts文件中增加ip地址+域名提高
访问速度,或者也可以利用这一特性屏蔽一些不看的网站(注:一般是网络管理员的活)
hosts.allow文件:
允许的ip地址登录到该服务器
hosts.deny文件:
拒绝的ip地址登录到该服务器
如果同一个ip地址在两个文件中都有的话意思是只有这个地址是可以访问的。
11.linux中查看系统资源情况的命令sar?
sar [options] [-A] [-o file] t [n]
sar -u -d -r 1 10 > 1.txt
其中:
t为采样间隔,n为采样次数,默认值是1;
-o file表示将命令结果以二进制格式存放在文件中,file 是文件名。
-A:所有报告的总和
-u:输出CPU使用情况的统计信息(cpu)
-v:输出inode、文件和其他内核表的统计信息
-d:输出每一个块设备的活动信息(硬盘)
-r:输出内存和交换空间的统计信息(内存)
-b:显示I/O和传送速率的统计信息
-a:文件读写情况
-c:输出进程统计信息,每秒创建的进程数
-R:输出内存页面的统计信息
-y:终端设备活动情况
-w:输出系统交换活动信息
(2).Linux中vmstat和top命令详解?
(1) vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,
虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令,一个是Linux/Unix都支持,二是相比top,
我可以看到整个机器的CPU,内存,IO的使用情况,而不是单单看到各个进程的CPU使用率和内存使用率(使用场景不一样)。
一般vmstat工具的使用是通过两个数字参数来完成的,第一个参数是采样的时间间隔数,单位是秒,第二个参数是采样的次数,如:
root@ubuntu:~# vmstat 2 1
procs -----------memory---------- —swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
1 0 0 3498472 315836 3819540 0 0 0 1 2 0 0 0 100 0
2表示每个两秒采集一次服务器状态,1表示只采集一次。
实际上,在应用过程中,我们会在一段时间内一直监控,不想监控直接结束vmstat就行了,例如:
复制代码
root@ubuntu:~# vmstat 2
procs -----------memory---------- —swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
1 0 0 3499840 315836 3819660 0 0 0 1 2 0 0 0 100 0
0 0 0 3499584 315836 3819660 0 0 0 0 88 158 0 0 100 0
0 0 0 3499708 315836 3819660 0 0 0 2 86 162 0 0 100 0
0 0 0 3499708 315836 3819660 0 0 0 10 81 151 0 0 100 0
1 0 0 3499732 315836 3819660 0 0 0 2 83 154 0 0 100 0
复制代码
这表示vmstat每2秒采集数据,一直采集,直到我结束程序,这里采集了5次数据我就结束了程序。
好了,命令介绍完毕,现在开始实战讲解每个参数的意思。
r:表示运行队列(就是说多少个进程真的分配到CPU),我测试的服务器目前CPU比较空闲,没什么程序在跑,
当这个值超过了CPU数目,就会出现CPU瓶颈了。这个也和top的负载有关系,一般负载超过了3就比较高,
超过了5就高,超过了10就不正常了,服务器的状态很危险。top的负载类似每秒的运行队列。
如果运行队列过大,表示你的CPU很繁忙,一般会造成CPU使用率很高。
b:表示阻塞的进程,这个不多说,进程阻塞,大家懂的。
swpd:虚拟内存已使用的大小,如果大于0,表示你的机器物理内存不足了,如果不是程序内存泄露的原因,
那么你该升级内存了或者把耗内存的任务迁移到其他机器。
free:空闲的物理内存的大小,我的机器内存总共8G,剩余3415M。
buff:Linux/Unix系统是用来存储,目录里面有什么内容,权限等的缓存,我本机大概占用300多M
cache: cache直接用来记忆我们打开的文件,给文件做缓冲,我本机大概占用300多M(这里是Linux/Unix的聪明之处,
把空闲的物理内存的一部分拿来做文件和目录的缓存,是为了提高 程序执行的性能,当程序使用内存时,buffer/cached会很快地被使用。)
si:每秒从磁盘读入虚拟内存的大小,如果这个值大于0,表示物理内存不够用或者内存泄露了,要查找耗内存进程解决掉。
我的机器内存充裕,一切正常。
so:每秒虚拟内存写入磁盘的大小,如果这个值大于0,同上。
bi:块设备每秒接收的块数量,这里的块设备是指系统上所有的磁盘和其他块设备,默认块大小是1024byte,
我本机上没什么IO操作,所以一直是0,但是我曾在处理拷贝大量数据(2-3T)的机器上看过可以达到140000/s,
磁盘写入速度差不多140M每秒
bo:块设备每秒发送的块数量,例如我们读取文件,bo就要大于0。bi和bo一般都要接近0,不然就是IO过于频繁,需要调整。
in:每秒CPU的中断次数,包括时间中断
cs:每秒上下文切换次数,例如我们调用系统函数,就要进行上下文切换,线程的切换,也要进程上下文切换,
这个值要越小越好,太大了,要考虑调低线程或者进程的数目,例如在apache和nginx这种web服务器中,
我们一般做性能测试时会进行几千并发甚至几万并发的测试,选择web服务器的进程可以由进程或者线程的峰值一直下调,
压测,直到cs到一个比较小的值,这个进程和线程数就是比较合适的值了。系统调用也是,每次调用系统函数,
我们的代码就会进入内核空间,导致上下文切换,这个是很耗资源,也要尽量避免频繁调用系统函数。
上下文切换次数过多表示你的CPU大部分浪费在上下文切换,导致CPU干正经事的时间少了,CPU没有充分利用,是不可取的。
us:用户CPU时间,我曾经在一个做加密解密很频繁的服务器上,可以看到us接近100,r运行队列达到80(机器在做压力测试,性能表现不佳)。
sy:系统CPU时间,如果太高,表示系统调用时间长,例如是IO操作频繁。
id:空闲 CPU时间,一般来说,id + us + sy = 100,一般我认为id是空闲CPU使用率,us是用户CPU使用率,sy是系统CPU使用率。
wt:等待IO CPU时间。
(2)top命令详解:
-d 后边加时间比如 top -d 2 两秒刷新一下,默认是5秒。
-p 后边加一个进程的PID 这样可以监控某一个进程的各项情况
12.sftp的用法:
sftp> lcd d:\
sftp> cd 服务器的目录
sftp> binary --以二进制进行传输
sftp> get(put) filename
get从服务器上得到文件放到本地
put从本地上传到服务器上
13.在服务器上查询oracle错误码的原因?
oerr ora 错误码
14.在Linux上安装DBI,DBD报错的处理方法?
解决方法:需要用root用户登录设置环境变量
ORACLE_HOME,PATH,LD_LIBRARY_PATH,ORACLE_USERID=‘abstest/abstest@absdb’
perl MakeFile.PL -l 生成MakeFile脚本然后make test make install
之后可以写一个测试脚本list.pl观察是否安装成功,然后在perl中用use DBI use DBI::DBD就可以了。
15.Linux如何新增用户并增加组?
解决方法:
useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name
主要参数
-c:加上备注文字,备注文字保存在passwd的备注栏中。
-d:指定用户登入时的主目录,替换系统默认值/home/<用户名>
-D:变更预设值。
-e:指定账号的失效日期,日期格式为MM/DD/YY,例如06/30/12。缺省表示永久有效。
-f:指定在密码过期后多少天即关闭该账号。如果为0账号立即被停用;如果为-1则账号一直可用。默认值为-1.
-g:指定用户所属的群组。值可以使组名也可以是GID。用户组必须已经存在的,期默认值为100,即users。
-G:指定用户所属的附加群组。
-m:自动建立用户的登入目录。
-M:不要自动建立用户的登入目录。
-n:取消建立以用户名称为名的群组。
-r:建立系统账号。
-s:指定用户登入后所使用的shell。默认值为/bin/bash。
-u:指定用户ID号。该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499。
实例:
useradd -d /home/hxabs -g hxabs -m hxabs
16.网络文件系统NFS是什么,有什么作用吗?
NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,
它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,
本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。
以下是NFS的好处:
- 节省本地存储空间,将常用的数据存放在一台NFS服务器上且可以通过网络访问,那么本地终端将可以减少自身存储空间的使用。
- 用户不需要在网络中的每个机器上都建有Home目录,Home目录可以放在NFS服务器上且可以在网络上被访问使用。
- 一些存储设备如软驱、CDROM和Zip(一种高储存密度的磁盘驱动器与磁盘)等都可以在网络上被别的机器使用。
这可以减少整个网络上可移动介质设备的数量。
17.将一个用户添加到某一用户组中
将一个用户添加到某一用户组中,千万不能直接用:
usermod -G groupA
这样做会使你离开其他用户组,仅仅做为用户组 groupA 的成员。
应该加上 -a 选项:
usermod -a -G groupA user
18.Linux下通过rm -rf 删除大量文件的时候报错:Argument list too long
待删除文件中包含的小文件数量过多,通常是由于受到shell参数个数限制所致。
这个是Linux系统存在的限制,可以通过如下指令查看该参数值的配置:
getconf ARG_MAX
解决方案:到待删除的文件夹下边执行ls | xargs rm -rf 就可以了。
19.如何在SecureCRT中进入图形化的界面?
export DISPLAY=172.168.1.1:0.0 这个ip地址代表的是你要在哪个电脑上展示图形化的界面
打开电脑上的图形化界面的程序
xhost +
./install 这个是可以执行的命令
20.设置ssh 上来能不自动断线?
修改自己 HOME 目录下的.bash_profile文件,加上
export TMOUT=1000000 (以秒为单位)
然后运行 source .bash_profile
21、向登陆到同一台服务器上的所有用户发一条信息
1)输入 wall并回车
2)输入要发送的消息,按回车键
3)结束时按“Control-d”键,消息即在用户的控制窗口中显示
22、压缩传输文件或目录?
传输到远程:tar czf - www | ssh server "tar zxf -"
压缩到远程:tar czf - www | ssh server "cat > www.tar.gz"
解压到远程:ssh server "tar zxf -" < www.tar.gz
解压到本地:ssh server "cat www.tar.gz" | tar zxf -
23.如何查询Linux服务器的系统启动时间和运行时间?
uptime 或者 cat /proc/uptime
24.虚拟机不能访问网络的方法?
route add default gw 192.168.100.1
route -n 可以查看所有的路由
25.如何查看CPU的相关信息?
总核数 = 物理CPU个数 X 每颗物理CPU的核数
总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数
查看物理CPU个数
cat /proc/cpuinfo| grep “physical id”| sort| uniq| wc -l
查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep “cpu cores”| uniq
查看逻辑CPU的个数
cat /proc/cpuinfo| grep “processor”| wc -l
26.linux系统中/etc/hosts.allow和/etc/hosts.deny?
这两个文件是限制访问的ip和服务的
配置文件方法:
服务(即程序名称):IP(或域 或主机名) :操作
sshd:192.168.59.131:allow(默认不用写)
这个意思是允许这个地址ssh访问192.168.59.131
写在hosts.deny当中的IP与网段则默认位deny,第三列的deny也可省略。
这两个文件的判断依据是:以/etc/hosts.allow为优先,若分析到的IP或网段并没有记录在/etc/hosts.allow
则以/etc/hosts/deny来判断
ALL:代表全部的program_name或者是IP都接受的意思,例如:ALL:ALL:deny;
27. daemon的启动脚本与启动方式?
/etc/init.d/* :启动脚本放置处
系统上几乎所有的服务启动脚本都放置在这里
/etc/sysconfig/* : 各服务的初始化环境配置文件
/etc/xinetd.conf , /etc/xinetd.d/* super daemon 配置文件
28.如何查找一个命令执行顺序的详细信息?
type [-atp] name
参数:
不加参数 : 会显示name是外部命令还是内部命令
-a : 会由PATH变量定义的路径中,将所有含name的命令都列出来,包含alias
type -a ls
显示
ls is aliased to ls --color==tty
ls is /bin/ls
29.中文编码的问题?
主要是两个:1.你的文件原来的编码;2.打开终端机的软件,例如shell中编码的设置。
DOS与LINUX的断行字符:
我们可以用cat -A 来查看以DOS(Windows系统)建立的文件的特殊格式,也可以发现在DOS中使用的断行字符为
^M
,
我们称为
C
R
与
L
F
两个符号,而在
L
I
n
u
x
下面,则是仅有
L
F
(
,我们称为CR与LF两个符号,而在LInux下面,则是仅有LF(
,我们称为CR与LF两个符号,而在LInux下面,则是仅有LF()这个断行符号。
如果你在windows下写一个shell script的程序文件,将可能造成程序无法执行的状态,因为它会误判程序所执行的
命令内容。
这个时候可以用dos2UNIX [-kn] file [newfile] 或者 UNIX2dos [-kn] file [newfile] 转化一下
参数:-k : 保留该文件的原本的mtime时间格式(不更新文件上次内容经过修订的时间)
-n : 保留原本的旧文件,将转换后的内容输出到新文件,如 dos2UNIX -n old new
语系编码转换:
iconv -f 原本编码 -t 新编码 filename [-o newfile]
参数:–list:列出iconv支持的语系数据;
-f : from , 后接原本的编码格式;
-t : to , 即后来的新编码要是什么格式;
-o file : 如果要保留原本的文件,那么使用 -o 新文件名,可以建立新编码文件。
30.java命令执行jar包的方式?
大家都知道一个java应用项目可以打包成一个jar,当然你必须指定一个拥有main函数的main class作为你这个jar包的程序入口。
具体的方法是修改jar包内目录META-INF下的MANIFEST.MF文件。
比如有个叫做test.jar的jar包,里面有一个拥有main函数的main class:test.someClassName
我们就只要在MANIFEST.MF里面添加如下一句话:
Main-Class: test.someClassName
然后我们可以在控制台里输入java -jar test.jar即可以运行这个jar。
31.grep精确匹配某一字符串?
grep -w
-c 只输出匹配行的计数。
-i 不区分大小写(只适用于单字符)。
-h 查询多文件时不显示文件名。
-l 查询多文件时只输出包含匹配字符的文件名。
-n 显示匹配行及行号。
-s 不显示不存在或无匹配文本的错误信息。
-v 显示不包含匹配文本的所有行。
32.linux环境oraclesqlplus下使用退格backspace回删出现^H的解决办法?
解决方法:在进入sqlplus之前,在当前terminal 执行如下命令:stty erase '^H' 就可以了。
33.Linux中的test命令?
-b<文件>:如果文件为一个块特殊文件,则为真;
-c<文件>:如果文件为一个字符特殊文件,则为真;
-d<文件>:如果文件为一个目录,则为真;
-e<文件>:如果文件存在,则为真;
-f<文件>:如果文件为一个普通文件,则为真;
-g<文件>:如果设置了文件的SGID位,则为真;
-G<文件>:如果文件存在且归该组所有,则为真;
-k<文件>:如果设置了文件的粘着位,则为真;
-O<文件>:如果文件存在并且归该用户所有,则为真;
-p<文件>:如果文件为一个命名管道,则为真;
-r<文件>:如果文件可读,则为真;
-s<文件>:如果文件的长度不为零,则为真;
-S<文件>:如果文件为一个套接字特殊文件,则为真;
-u<文件>:如果设置了文件的SUID位,则为真;
-w<文件>:如果文件可写,则为真;
-x<文件>:如果文件可执行,则为真。
34.Linux中sz命令的使用?
sz 文件夹名/*.* --可以将整个文件夹下载到本地
35.Linux中sed命令的用法?
sed -i 是在原始文件上进行修改
sed -i 's/原来字符串/现在字符串/g' 文件名
但是有特殊字符时则失效,需要将‘/’替换成‘#’:
sed ‘s#oldString#newString#g’ filename
如:sed ‘s##\#g’ ceshi.tex
连续替换多个特殊字符:‘’, ‘^’
sed -i 's##\_#g ; s#^#\^#g’ filename
ps:替换特殊字符‘^’时需要进行转义,否则默认在每行行首进行替换相应的内容
36.Linux中查找文件中的内容?
find . -name "*.py" | xargs grep item
37.centos系统中如何停止防火墙?
答案:systemctl stop firewalld.service**
38.linux系统如何修改LANG的值?
答案:初始文件在 /etc/locale.conf 或者 /etc/sysconfig/i18n 这两个文件中,后期可以通过修改 .bashrc或者.bash_profile文件的形式永久修改系统语言,避免乱码。
39.linux系统如何查看端口的占用情况?
答案:lsof -i:端口 例子 lsof -i:9043