扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
Linux read命令用于从标准输入读取数值。
专注于为中小企业提供成都网站设计、成都网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业莱芜免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
read 内部命令被用来从标准输入读取单行数据。这个命令可以用来读取键盘输入,当使用重定向的时候,可以读取文件中的一行数据。
参数说明:
1、简单读取
测试结果为:
2、-p 参数,允许在 read 命令行中直接指定一个提示。
测试结果为:
3、-t 参数指定 read 命令等待输入的秒数,当计时满时,read命令返回一个非零退出状态。
执行程序不输入,等待 5 秒后:
4、除了输入时间计时,还可以使用 -n 参数设置 read 命令计数输入的字符。当输入的字符数目达到预定数目时,自动退出,并将输入的数据赋值给变量。
该例子使用了-n 选项,后接数值 1,指示 read 命令只要接受到一个字符就退出。只要按下一个字符进行回答,read 命令立即接受输入并将其传给变量,无需按回车键。
只接收 2 个输入就退出:
执行程序输入两个字符:
5、 -s 选项能够使 read 命令中输入的数据不显示在命令终端上(实际上,数据是显示的,只是 read 命令将文本颜色设置成与背景相同的颜色)。输入密码常用这个选项。
执行程序输入密码后是不显示的:
6.读取文件
每次调用 read 命令都会读取文件中的 "一行" 文本。当文件没有可读的行时,read 命令将以非零状态退出。
通过什么样的方法将文件中的数据传给 read 呢?使用 cat 命令并通过管道将结果直接传送给包含 read 命令的 while 命令。
测试文件 test.txt 内容如下:
测试代码:
执行结果为:
使用 -e 参数,以下实例输入字符 a 后按下 Tab 键就会输出相关的文件名(该目录存在的):
1.grep:找出文件中含有关键字的行
2.cat:读取,显示或拼接文件内容
3.head:查看文件前多少行,默认为10行
4.less:使文件内容可以翻页显示,按q退出观看模式
5.sed :文本替换
6.vi:创建文件并写入内容
点击键盘上的“i”键,进入编辑状态 ,如果看到底部出现“插入”两字,表示成功进入编辑状态,此时就可以在文件中输入你想要输入的内容了
输入想插入的内容,输入完成后点击键盘上的“esc”键,退出编辑
输入:wq,点击回车,退出并保存
查看刚才是否些文件成功
7.%操作符,#操作符:根据拓展名切分文件名,“名称.扩展名”
有一些脚本是依据文件名进行各种处理的。我们可能会需要在保留扩展名的同时修改文件名,转换文件格式或提取部分文件名。
新手,纯纯搬运工【出处引用自: 】
1. Linux常用命令
最常用:
ls(英文全拼:list files):列出目录及文件名
ls -l:列出目录及文件名,可查看更多
ls -al:可以看到隐藏文件
cd(英文全拼:change directory):切换目录
cd .. :返回上一级
cd 文件夹名:进入目录
pwd(英文全拼:print work directory):显示目前的目录
mkdir 文件夹名(英文全拼:make directory):创建一个新的目录
rmdir 文件夹名(英文全拼:remove directory):删除一个空的目录
cp xxx xxx(英文全拼:copy file): 复制文件或目录
mv xxx xxx(英文全拼:move file): 移动文件或目录,或修改文件或目录的名称
rm(英文全拼:remove): 删除文件
rm -r 文件夹名:递归删除某目录
clear:清空terminal的所有内容(或者使用Ctrl+L)
tab按键:补充完整文件名或文件夹名
次常用:
vim/vi 某文件 (编辑文件)
nano 某文件 (编辑文件)
touch 文件 (新建空文件)
sudo -s (切换到root模式)
exit (退出root模式等)
sudo chmod -R 755 文件名/文件夹名 (获取文件/文件夹的755权限)
chown [用户] [文件或目录] (改变文件或目录的所有者)
chgrp [用户组] [文件或目录] (改变文件或目录的所属组)
make (编译成.exe)
解压/解包:
tar文件 (注:tar是打包,不是压缩!)
解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
.gz文件
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName
.tar.gz 和 .tgz文件
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName
安装和卸载deb软件包:
安装:sudo dpkg -i deb文件
查看:sudo dpkg -l
卸载:sudo dpkg -r 软件名
参考资料:
[1] Linux 教程
[2] Linux常用命令
[3] linux中tar命令的用法
[4] 全网最全Linux命令总结
2. vim/vi里的操作
:q 退出
:wq 保存并退出
:w 保存
:q! 强行退出(不保存退出)
:w! 强行保存
i 进入编辑,转为输入模式(光标前面)
a 进入编辑,转为输入模式(光标后面)
o 进入编辑,转为输入模式(光标下方新建一行)
Esc 退出i(插入)命令
3. 超算中PBS常用命令
pbsnodes (查看所有节点)
pbsnodes -l free (查看空闲节点)
pbsnodes 某节点 (查看某节点状态)
ssh 某节点 (转到某节点)
exit (离开节点)
qsub 文件名.pbs/sh (提交任务)
qstat (列出状态)
qstat -q (列出队列)
qstat -n (列出队列中使用的节点)
qstat -f jobid (查看jobid任务的详细信息)
qdel jobid (取消任务)
4. 其他
(1)Linux开机自启
sh文件中包含:
#!/bin/bash#chkconfig: 2345 80 90#description:auto_run
sh文件移动到/etc/init.d后,分别输入命令:
chkconfig --add xxx.sh
chkconfig --list
chkconfig xxx.sh on
service xxx.sh start
参考资料: linux 开机启动 .sh 文件 - 自己的太阳 - 博客园
(2)Linux环境变量
方法1:临时使用环境变量:export PATH="/home/www/anaconda3/bin:$PATH"
方法2:修改.bashrc文件
参考资料: Linux PATH 作用以及查看和修改方法_haozhepeng的专栏
(3)两个sh文件
a.sh文件(用于提交任务,执行a.py文件)
#!/bin/sh#PBS -N task#PBS -l nodes=1:ppn=1#PBS -q scorecd $PBS_O_WORKDIRexport OMP_NUM_THREADS=1python a.py
a.sh文件(用于提交任务,执行a.exe文件)
#!/bin/sh#PBS -N task#PBS -l nodes=1:ppn=1#PBS -q scorecd $PBS_O_WORKDIRexport OMP_NUM_THREADS=1./a.exe
(4)一个makefile文件
makefile文件(用于编译Fortran文件)
INC := -I/public/software/compiler/intel/composer_xe_2015.2.164/mkl/include/intel64/lp64
LIB := -L/public/software/compiler/intel/composer_xe_2015.2.164/mkl/lib/intel64
mpi:= -I/public/software/mpi/mpich/3.1.4/intel/include /public/software/mpi/mpich/3.1.4/intel/lib -lmpich -limf -lsvml -lintlc
src:=Console1exec:=a
all: $(src).f90
ifort $(src).f90 $(INC) $(LIB) -openmp -lmkl_intel_lp64 -Wl,--start-group -lmkl_intel_thread -lmkl_lapack95_lp64 -lmkl_core -lmkl_blas95_lp64 -Wl,--end-group -liomp5 -lpthread -O2 -o $(exec).exe
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流