Articles of shell

为什么在Linux机器上安装Java时使用了alternatives命令

在Linux机器上安装Java时,需要执行以下命令(请参阅教程中的命令)。 alternatives –install /usr/bin/java java /usr/java/jre1.7.0_01/bin/java 20000 terminal上的man alternatives命令说: select – 维护确定默认命令的符号链接 我不明白为什么我们在安装Java(JRE或JDK)的时候需要这个命令,并且在行尾有20000是指什么? 请注意解释。

Ansible权限问题

我试图将当前用户添加到系统中的一个组中,然后执行一个需要该组权限的命令。 我的手册是这样的: – name: Add this user to RVM group sudo: true user: state=present name=vagrant append=yes groups=rvm group=rvm – name: Install Ruby 1.9.3 command: rvm install ruby-1.9.3-p448 creates=/usr/local/rvm/bin/ruby-1.9.3-p448 问题是,所有这些都发生在同一个shell中。 stream浪者的shell还没有被新的组更新。 是否有一种干净的方式来刷新Ansible中的用户当前组? 我想我需要得到它重新连接或打开一个新的shell。 不过,我试图打开一个新的壳,它只是挂起: – name: Open a new shell for the new groups shell: bash 当然,它永远不会退出! 与newgrp相同的东西 – name: Refresh the groups shell: newgrp 因为它基本上做同样的事情。 […]

如何使用shell脚本创buildzip文件?

我想创build一个基于目录的ZIP。 但是我需要从Result目录下制作zip文件。 #!/bin/bash zip -r /home/admin/download.zip /home/admin/1/2/3/Results

在shell脚本中将编码格式设置为java

我有一个运行我的Java应用程序的shell脚本。现在我想指定编码格式“UTF8”到我的Java应用程序使用shell脚本可以帮助任何人。我使用的是mac os。 谢谢 Ganesh神

简洁的方式来打印所有的行,直到匹配给定模式的最后一行

我试图find一个简洁的shell,它会给我一个文件中的所有行, 直到某种模式。 用例将转储日志文件中的所有行,直到find指示服务器已重新启动的标记。 这是一个愚蠢的壳只有这样的方式: tail_file_to_pattern() { pattern=$1 file=$2 tail -n$((1 + $(wc -l $file | cut -d' ' -f1) – $(grep -E -n "$pattern" $file | tail -n 1 | cut -d ':' -f1))) $file } 一个稍微更可靠的Perl方式,需要stdin上的文件: perl -we ' push @lines => $_ while <STDIN>; my $pattern = $ARGV[0]; END { my $last_match = […]

在SLURM sbatch脚本中使用Bashvariables

我试图从另一个文件中获取一个值,并在SLURM提交脚本中使用它。 但是,我得到一个错误,该值是非数值的,换句话说,它不被解除引用。 这是脚本: #!/bin/bash # This reads out the number of procs based on the decomposeParDict numProcs=`awk '/numberOfSubdomains/ {print $2}' ./meshModel/decomposeParDict` echo "NumProcs = $numProcs" #SBATCH –job-name=SnappyHexMesh #SBATCH –output=./logs/SnappyHexMesh.log # #SBATCH –ntasks=`$numProcs` #SBATCH –time=240:00 #SBATCH –mem-per-cpu=4000 #First run blockMesh blockMesh #Now decompose the mesh decomposePar #Now run snappy in parallel mpirun -np $numProcs snappyHexMesh -parallel […]

如何调用位于其他目录中的Makefile?

我正在尝试这样做: 我想从位于不同目录的shell脚本调用一个make( Makefile存在于其他目录中,可以使用abcpath)。 我该怎么做呢? 由于shell脚本不允许我进入Makefile目录并执行make ,我怎样编写shell命令(通过给Makefile执行path)来执行make ?

如何在shell中重复连字符(连字符)

我怎样才能在shell中重复这个字符? 我已阅读并尝试过,但这不适用于- 。 它会抛出错误invalid option 。 下面是我使用的确切命令: printf '-%.0s' {1..100} 原始发布行: printf '-%0.s' {1..100} 我也尝试逃避-通过放置一个\但在这种情况下,它重复\- n次。

Android 2.3:只读文件系统卡住了

你好。 我有一个LG-Optimus HUB E510 Android设备。 两个星期前,我根植了我的设备以访问内部存储并更改一些文件(如警报,通知,声音,.etc)。 那么我做到了。 但在重新存储出厂设置后,内部存储文件又变为只读。 然后我试着用adb–shell来改变文件夹和文件的权限 chmod 777 "folder destination" 但贝壳反应 无法chmod系统/媒体/audio/警报: 只读文件系统 现在我不知道该怎么做。 所以,我需要你的build议。 谢谢。 图片 这是从Ubuntu的shell改变权限的尝试 在eclipse DDMS透视图中包含当前权限的文件

执行命令行并返回命令输出

目前,我正在使用非标准SYSTEM内部例程(类似于Fortran 2008 EXECUTE_COMMAND_LINE内部函数)从我的fortran程序中使用shell命令行调用: CALL SYSTEM(commandStr) 其中commandStr是包含我要执行的shell命令的string。 此刻,我不知道直接的方式来返回commandStr的输出,但只有它的返回状态。 所以,我现在正在做的是将输出写入文件,然后从Fortran程序中读取文件。 例: CALL SYSTEM('sed ''s/,//g'' myFile > dummyFile') 如果我想从myFile中删除逗号。 然后我使用OPEN和READ来获取dummyFile的内容。 这工作得很好,但是我很关心从磁盘写入/读取文件,特别是如果我在一个长的循环内执行此操作,并且commandStr输出很大。 有没有办法将commandStr输出redirect到我可以直接从Fortran程序访问的内存缓冲区(而不是硬盘)(也许是通过一个特定的UNIT号码)?