我写了一个脚本来填充文件以进行一些磁盘容量测试.你能告诉我为什么会有错误吗?
#!/bin/bash
COUNTER=0;
FILE_SIZE_BITS=8589934592;
FILE_NAME="fill_me";
while [ $COUNTER -eq 0 ]; do
echo "Dummy text to fill the file" >> "$FILE_NAME";
SIZE='stat -c%s fill_me';
if [[ $SIZE -gt $FILE_SIZE_BITS ]]; then
let COUNTER=COUNTER+1;
fi
done
Run Code Online (Sandbox Code Playgroud)
错误是:
-bash: [[: stat -c%s fill_me: division by 0 (error token is "fill_me")
Run Code Online (Sandbox Code Playgroud)
谢谢
我想压缩一个目录.
tar -cvzf mydir.tar.gz mydir
Run Code Online (Sandbox Code Playgroud)
但这会保留符号链接,因此无法移植到新系统.
如何转换符号链接?
我试过了
tar -cvzfh
Run Code Online (Sandbox Code Playgroud)
自从man tar
说
-h, - dereference
Run Code Online (Sandbox Code Playgroud)don’t dump symlinks; dump the files they point to
但这会导致错误
tar: Error exit delayed from previous errors
Run Code Online (Sandbox Code Playgroud)
并创建一个名为"zh"的文件
我的文件位于RHEL服务器上.
我正在使用perl脚本来转换文件,发现只是从stdin读取并写入stdout足以导致大量内存泄漏.它达到了大约20gig,我猜想被操作系统杀死了.这是一个显示问题的脚本.
#!/usr/bin/perl
use strict;
use warnings;
foreach my $line(<STDIN>)
{
print $line;
}
Run Code Online (Sandbox Code Playgroud)
而且我这样运行它
cat inputFile.x | perl test.pl > outputFile.x
Run Code Online (Sandbox Code Playgroud)
一旦我以每秒约0.5gig的速度运行这个记忆头.输入文件是68gig所以看起来perl永远不会释放内存.我尝试了各种各样的东西,比如undef $ line,使用ref,在foreach之外定义$ line.有没有办法强制perl释放内存?
编辑:注意,在Red Hat 6.5 64位上运行,Perl 5.10.1
Linux 如何处理夏令时 (DST)
切换是否会立即发生,例如 3 点钟立即切换到 2 点钟? 或者它改变得很慢 我问你这个因为我的服务器上有很大的数据库,如果这种切换立即发生在数据库中的条目上一小时将被写入
我怎么解决这个问题 ?
我在现有的CDH 5.5.2集群上安装Kafka-2.0,这是我遵循的程序
我得到的错误(日志文件)
Fatal error during KafkaServerStartable startup. Prepare to shutdown
java.lang.OutOfMemoryError: Java heap space
at java.nio.HeapByteBuffer.<init>(HeapByteBuffer.java:57)
at java.nio.ByteBuffer.allocate(ByteBuffer.java:331)
at kafka.log.SkimpyOffsetMap.<init>(OffsetMap.scala:43)
at kafka.log.LogCleaner$CleanerThread.<init>(LogCleaner.scala:186)
at kafka.log.LogCleaner$$anonfun$1.apply(LogCleaner.scala:83)
at kafka.log.LogCleaner$$anonfun$1.apply(LogCleaner.scala:83)
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:245)
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:245)
at scala.collection.immutable.Range.foreach(Range.scala:166)
at scala.collection.TraversableLike$class.map(TraversableLike.scala:245)
at scala.collection.AbstractTraversable.map(Traversable.scala:104)
at kafka.log.LogCleaner.<init>(LogCleaner.scala:83)
at kafka.log.LogManager.<init>(LogManager.scala:64)
at kafka.server.KafkaServer.createLogManager(KafkaServer.scala:601)
at kafka.server.KafkaServer.startup(KafkaServer.scala:180)
at kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:37)
at kafka.Kafka$.main(Kafka.scala:67)
at com.cloudera.kafka.wrap.Kafka$.main(Kafka.scala:76)
at com.cloudera.kafka.wrap.Kafka.main(Kafka.scala)
Run Code Online (Sandbox Code Playgroud)我想创建一个 Dockefile 如下
FROM <rhel6/7>
# add our user and group first to make sure their IDs get assigned consistently, regardless of whatever dependencies get added
RUN addgroup redis && useradd -g redis -ms /bin/bash redi
RUN mkdir /data && chown redis:redis /data
VOLUME /data
WORKDIR /data
# Copy the current directory contents into the container at /app
ADD . /data
# Run app.py when the container launches
CMD ["/usr/software/rats/bedrock/bin/python2.7", "/data/test_redis.py"]
Run Code Online (Sandbox Code Playgroud)
我用什么代替FROM <rhel6/7>
?
我有以下要简化的If-Else语句。
if [[ "$IP" == 192.* ]] || [[ "$IPAddr" == 193.* ]]
then
data="correct data set"
fi
Run Code Online (Sandbox Code Playgroud)
我需要包括更多内容,[[ "$IP" == 192.* ]]
并希望查看是否有更好的方法可以做到这一点,而不是使用太多的||
语句
我正在尝试创建一个 solr 服务脚本,可以使用它在重新启动时自动启动 solr。这是我看到推荐的一个脚本:
#!/bin/sh
# Starts, stops, and restarts Apache Solr.
#
# chkconfig: 35 92 08
# description: Starts and stops Apache Solr
SOLR_DIR="/var/www/html/fas/solr/solr-latest"
JAVA_OPTIONS="-Xmx1024m -DSTOP.PORT=8983 -DSTOP.KEY=mustard -jar /var/www/html/fas/solr/solr-latest/server/start.jar"
LOG_FILE="/var/log/solr.log"
JAVA="/bin/java"
case $1 in
start)
echo "Starting Solr"
cd $SOLR_DIR
$JAVA $JAVA_OPTIONS 2> $LOG_FILE &
;;
stop)
echo "Stopping Solr"
cd $SOLR_DIR
$JAVA $JAVA_OPTIONS --stop
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "Usage: $0 {start|stop|restart}" >&2
exit 1
;;
esac
Run Code Online (Sandbox Code Playgroud)
我想我已经为脚本中的变量设置了适当的值。但是当我尝试运行脚本时,我收到“连接被拒绝”。
$ service solr …
Run Code Online (Sandbox Code Playgroud) 嗨,我在 CentOS 服务器上,我有一个用户叫,'theowner'
所以他的文件夹位于/home/theowner
另一方面,我有 2 个文件夹,f1 和 f2 /home/myprojects/src
,我只希望这些文件夹出现在下面,/home/theowner
但我不想移动我想要的文件夹是将这2 个文件夹链接到/home/theowner
. 它是针对c9工作区的,我只想让所有者在登录时直接访问该文件夹。谢谢!
rhel ×9
bash ×4
linux ×4
shell ×2
apache-kafka ×1
boot ×1
centos ×1
cloudera-cdh ×1
compression ×1
database ×1
docker ×1
dockerfile ×1
dst ×1
hadoop ×1
hadoop2 ×1
perl ×1
sh ×1
solr ×1
symlink ×1
tar ×1