我需要在这个 Ruby 代码中注释一行(我正在使用 Atom 编辑文件......
该行如下..-DPROJ4_LIBRARY:FILEPATH=#{prefix_dir}/lib/libproj.so
,这就是代码...
bash 'build-and-install-libgeotiff' do
user "root"
code <<-EOH
cd "/tmp"
tar xzf libgeotiff-#{version}.tar.gz
cd libgeotiff-#{version}
export MAKEFLAGS='-j2'
[ -d build ] || mkdir build
cd build
cmake3 ..
-DCMAKE_INSTALL_PREFIX=#{prefix_dir}
-DWITH_JPEG=ON
-DWITH_ZLIB=ON
-DWITH_PROJ4=ON
-DPROJ4_INCLUDE_DIR:PATH=#{prefix_dir}/include
-DPROJ4_LIBRARY:FILEPATH=#{prefix_dir}/lib/libproj.so
-DPROJ4_LIBRARY:FILEPATH=/usr/lib64/libproj.so
make && make install
EOH
我尝试使用#
但这似乎不正确,因为我的编辑器自动#{}
...在这里,您是转换后的代码...
bash 'build-and-install-libgeotiff' do 用户"根">
代码 <<-EOH CD"/TMP" tar xzf libgeotiff-#{version}.tar.gz CD libgeotiff-#{version}
export MAKEFLAGS='-j2'
[ -d build ] || mkdir build
cd build
cmake3 ..
-DCMAKE_INSTALL_PREFIX=#{prefix_dir}
-DWITH_JPEG=ON
-DWITH_ZLIB=ON
-DWITH_PROJ4=ON
-DPROJ4_INCLUDE_DIR:PATH=#{prefix_dir}/include
#{}-DPROJ4_LIBRARY:FILEPATH=#{prefix_dir}/lib/libproj.so
-DPROJ4_LIBRARY:FILEPATH=/usr/lib64/libproj.so
make && make install
嗡嗡��
我如何在此代码中注释我的行?
在 Bash 中,如果您在由连接的行序列中注释掉某些内容,则会注释掉
#
之后的所有内容。
这是一个快速而肮脏的解决方法。
code <<-EOH
cd "/tmp"
tar xzf libgeotiff-#{version}.tar.gz
cd libgeotiff-#{version}
export MAKEFLAGS='-j2'
[ -d build ] || mkdir build
cd build
so_arg="-DPROJ4_LIBRARY:FILEPATH=#{prefix_dir}/lib/libproj.so"
cmake3 ..
-DCMAKE_INSTALL_PREFIX=#{prefix_dir}
-DWITH_JPEG=ON
-DWITH_ZLIB=ON
-DWITH_PROJ4=ON
-DPROJ4_INCLUDE_DIR:PATH=#{prefix_dir}/include
$so_arg
-DPROJ4_LIBRARY:FILEPATH=/usr/lib64/libproj.so
make && make install
EOH
现在,您只需sed -i s/so_arg=/1#/' file
将其注释掉即可。