Would you not be better re-writing the loop to have the loop read the data in rather than have it piped to? That might sound confusingly similar, but some shells will start a sub-process when you add a pipe into it. That might mean that the loop is actually in a sub-process and the scoping of variables may not be what you expect. Of course it might just be that your printf statement doesn't have a new-line after the last item.
Could you consider something like the following instead:-
This runs the process to generate the input in a subshell and your loop runs in the current process so that values might be more what you expect.
Hello,
I have 800 or so files with 3 columns each and >10000 lines each.
For each file and each line I would like to print the maximum column number for each line. Then I would like to 'paste' each of these files together (column-wise) so that the file with expression in label '_1' is the... (6 Replies)
Hi All,
I am performing addition of two inetger variables which assigning output to a new variable getting following error.
Check1.sh
#!/bin/ksh
filesrc=/usr/kk/Source1.txt
filetgt=/usr/kk/Source2.txt
FINAL_COUNTS= `awk '{n++} END {printf "%012d\n",n}' ${filesrc} ${filetgt}`... (3 Replies)
Hi All,
I want to pass few dynamic arguments to shell script. The number of arguments differ each time I call the script.
I want to print the arguments using the for loop as below. But not working out.
for (( i=1; i<=$#; i++ ))
do
echo $"($i)"
done
/bin/sh test.sh arg1 arg2 arg3
... (1 Reply)
Hi ,
i want to print the output in line by line
while read LINE
do
echo $LINE | grep UCM | egrep '(Shutdown|Unavailable)'
echo $LINE | grep SRBr | egrep '(Shutdown|Unavailable)'
echo $LINE | grep SRP| egrep '(Shutdown|Unavailable)'
echo $LINE | grep OM | grep JMS|... (7 Replies)
Hi,
I am trying to print copy percentage completion dynamically by using the script below,
#!/bin/bash
dest_size=0
orig_size=`du -sk $sourcefile | awk '{print $1}'`
while ; do
dest_size=`du -sk $destfile | awk '{print $1}'`
coyp_percentage=`echo "scale=2; $dest_size*100/$orig_size"... (4 Replies)
In the bash below I am trying to loop through all the R1.gz in a directory (always 1), store them in ARRAY, and cut them before the second _. That is being done but I can't seem to print then one a single line seperated by a space. Is the below the best way or is there a better solution? Thank you... (3 Replies)
I am unable to loop print a python string array in my unix shell script:
~/readarr.sh '{{ myarr }}'
more readarr.sh
echo "Parameter 1:"$1
MYARRAY= $1
IFS=
MYARRAY=`python <<< "print ' '.join($MYARRAY)"`
for a in "$MYARRAY"; do
echo "Printing Array: $a"
done
Can you... (10 Replies)
Currently using below script but echo it print the output in two line.
Input file all-vm-final-2.txt
CEALA08893 SDDC_SCUN DS_SIO_Workload_SAPUI_UAT_01 4
CEALA09546 SDDC_SCUN DS-SIO-PD5_Workload_UAT_SP1_Flash_07 4
CEALA09702 SDDC_SCUN DS-VSAN-RMP-WORKLOAD01 4
DEALA08762 SDDC_LDC... (3 Replies)
Discussion started by: ranjancom2000
3 Replies
LEARN ABOUT CENTOS
losetup
LOSETUP(8) System Administration LOSETUP(8)NAME
losetup - set up and control loop devices
SYNOPSIS
Get info:
losetup loopdev
losetup -l [-a]
losetup -j file [-o offset]
Delete loop:
losetup -d loopdev...
Delete all used loop devices:
losetup -D
Print name of first unused loop device:
losetup -f
Setup loop device:
losetup [-o offset] [--sizelimit size]
[-p pfd] [-rP] {-f[--show]|loopdev} file
Resize loop device:
losetup -c loopdev
DESCRIPTION
losetup is used to associate loop devices with regular files or block devices, to detach loop devices and to query the status of a loop
device. If only the loopdev argument is given, the status of the corresponding loop device is shown.
Note that the old output format (e.g. losetup -a) with comma delimited strings is deprecated in favour of the --list output format (e.g.
losetup -a -l).
OPTIONS
+The size and offset arguments may be followed by the multiplicative +suffixes KiB=1024, MiB=1024*1024, and so on for GiB, TiB, PiB, EiB,
ZiB and YiB +(the "iB" is optional, e.g. "K" has the same meaning as "KiB") or the suffixes +KB=1000, MB=1000*1000, and so on for GB, TB,
PB, EB, ZB and YB.
-a, --all
show status of all loop devices. Note that not all information are accessible for non-root users. See also --list. The old output
format (as printed without --list) is deprecated.
-c, --set-capacity loopdev
force loop driver to reread size of the file associated with the specified loop device
-d, --detach loopdev...
detach the file or device associated with the specified loop device(s)
-D, --detach-all
detach all associated loop devices
-f, --find
find the first unused loop device. If a file argument is present, use this device. Otherwise, print its name
-h, --help
print help
-j, --associated file
show status of all loop devices associated with given file
-l, --list
if a loop device or the -a option is specified, print default columns for either the specified loop device or all loop devices,
default is to print info about all devices.
-o, --offset offset
the data start is moved offset bytes into the specified file or device
-O, --output columns
specify which columns are to be printed for the --list output
--sizelimit size
the data end is set to no more than size bytes after the data start
-P, --partscan
force kernel to scan partition table on newly created loop device
-r, --read-only
setup read-only loop device
--show print device name if the -f option and a file argument are present.
-v, --verbose
verbose mode
ENCRYPTION
Cryptoloop is no longer supported in favor of dm-crypt. For more details see cryptsetup(8).
RETURN VALUE
losetup returns 0 on success, nonzero on failure. When losetup displays the status of a loop device, it returns 1 if the device is not con-
figured and 2 if an error occurred which prevented from determining the status of the device.
FILES
/dev/loop[0..N]
loop block devices
/dev/loop-cotrol
loop control device
EXAMPLE
The following commands can be used as an example of using the loop device.
# dd if=/dev/zero of=~/file.img bs=1MiB count=10
# losetup --find --show ~/file.img
/dev/loop0
# mkfs -t ext2 /dev/loop0
# mount /dev/loop0 /mnt
...
# umount /dev/loop0
# losetup --detach /dev/loop0
AUTHORS
Karel Zak <kzak@redhat.com>, based on original version from Theodore Ts'o <tytso@athena.mit.edu>
AVAILABILITY
The losetup command is part of the util-linux package and is available from ftp://ftp.kernel.org/pub/linux/utils/util-linux/.
util-linux July 2003 LOSETUP(8)