Sponsored Content
Top Forums UNIX for Beginners Questions & Answers Help me understand this script Post 303015074 by Kamesh G on Tuesday 27th of March 2018 09:28:44 AM
Old 03-27-2018
Tools Help me understand this script

Code:
#!/bin/awk -f
BEGIN {i=1;file="modified.txt"}

{
if ($0 !~ /^DS:/) {print $0 >> file} else {
        if ($0 ~ /^DS:/) {print "DS: ",i >> file;if (i==8) {i=1} else {i++}};
   }
}

END {gzip file}

Can someone explain to me how this above script works, I got it from a friend but not able to understand what is happening inside.
when is do this ./script.sh file.txt This script is changing the DS: * value in the file sequencially from 1to8. But I to like to understand how this script is working.

Thank you in advance!!!
Moderator's Comments:
Mod Comment Please use CODE tags when displaying sample input, output, and code segments.

Last edited by Don Cragun; 03-28-2018 at 08:14 AM.. Reason: Add CODE and ICODE tags.
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

help wanted to understand MQ script

hi , i am writing a script to copy the MQ messages from onw queue to another. The following i got from one site, but i di not understand , can anyone explain. /root/scripts/sap/q -m$Q_MANAGER -i$Q_NAME_SRC_1 -F/logs/mq/MQ_COPYdump_$Q_NAME_SRC_1.$$ /root/scripts/sap/q -m$Q_MANAGER... (0 Replies)
Discussion started by: Satyak
0 Replies

2. Shell Programming and Scripting

Can't understand the script

I am relatively new to Shell Scripting. I can't understand the following two scripts. Can someone please spare a minute to explain? 1) content s of file a are (021) 654-1234 sed 's/(//g;s/)//g;s/ /-/g' a 021-654-1234 2)cut -d: -f1,3,7 /etc/passwd |sort -t: +1n gives error (3 Replies)
Discussion started by: shahdharmit
3 Replies

3. Shell Programming and Scripting

Help to understand the script

Hi All; Is there anybody can explain this script please? trap 'C_logmsg "F" "CNTL/c OS signal trapped, Script ${G_SCRIPTNAME] terminated"; exit 1' 2 trap 'C_logmsg "F" "Kill Job Event sent from the Console, Script ${G_SCRIPTNAME] terminated"; exit 1' 15 (3 Replies)
Discussion started by: thankbe
3 Replies

4. Shell Programming and Scripting

Need to understand the script pls help

Can u please explain what it is doing #!/bin/sh fullyear=`/home/local/bin/datemmdd 1`"."`date +%Y` uehist=/u05/home/celldba/utility/ue/prod/history echo $fullyear cd $uehist ls -ltr pwroutages.master.$fullyear* | awk '{print $9}' > /u01/home/celldba/tmp/pwroutages_master_all_tmp while... (2 Replies)
Discussion started by: raopatwari
2 Replies

5. Shell Programming and Scripting

Need help to understand ksh script

Hi All, I have a ksh script & would like to understand mening of below lines in script, Starting lines of script is as below, #!/bin/ksh #%W% %I% %D% %T% ---- ??? #%W%G --- ??? num_ctrl_files=0 OS=`uname` if then //g' | egrep -v '(.sh:|.ksh:)' | sed 's/^.*://g' | sed 's/^M//g' |... (6 Replies)
Discussion started by: gr8_usk
6 Replies

6. Shell Programming and Scripting

Understand script formte

Hi i have one script and i am running it but not getting current output so i want to understand how to input in the script. when i do help then i am getting below massage thanks got it (1 Reply)
Discussion started by: asavaliya
1 Replies

7. Shell Programming and Scripting

Help to understand a script

Hello world! Can someone please explain me how this code works? I'ts supposed to find words in a dictionary and show the anagrams of the words. { part = word2key($1) data = $1 } function word2key(word, a, i, x, result) { x = split(word, a, "") asort(a) ... (1 Reply)
Discussion started by: jose2802
1 Replies

8. Shell Programming and Scripting

Can't understand script output

New to korn shel1 and having an issue. The following is suppose to read the parameter values from files in a source directory and then pass them on to a log file in a different directory, The ArchiveTracker scripts is suppose to call the parameterreader script to exact the parameter values and... (3 Replies)
Discussion started by: bayouprophet
3 Replies

9. Shell Programming and Scripting

Need help to understand the below shell script

Please help me to understand the below 3 lines of code.execute shell in jenkins 1)APP_IP=$( docker inspect --format '{{ .NetworkSettings.Networks.'"$DOCKER_NETWORK_NAME"'.IPAddress }}' ${PROJECT_NAME_KEY}"-CI" ) 2)HOST_WORKSPACE=$(echo ${WORKSPACE} | sed... (1 Reply)
Discussion started by: naresh85
1 Replies
MOD-ACTIVE(8)						      System Manager's Manual						     MOD-ACTIVE(8)

NAME
mod-active - batch processing of ctlinnd newgroup/rmgroup/changegroup SYNOPSIS
mod-active [ ctlinnd_command_file ] DESCRIPTION
mod-active is a perl script that updates the active file based on its input lines of ctlinnd newgroup, rmgroup and changegroup commands. It pauses the server briefly while the existing active file is read and rewritten, which not only keeps innd from updating the active file but also locks against other instances of mod-active. The input to mod-active can come either from one or more files named on the command line, or from the standard input. Typically its input is the output from the docheckgroups or actsync commands. Every line which contains the string "ctlinnd newgroup", "ctlinnd rmgroup" or "ctlinnd changegroup", optionally preceded by whitespace and/or the path to ctlinnd, is noted for the update. Redundant commands, such as a newgroup directive for a group that already exists, are silently ignored. All other lines in the input are also silently ignored. After the new active file has been generated, the existing one is renamed to active.old and the new one is moved into place. The script then displays the differences between the two files. Any groups that were added to the active file are also added to the active.times file with the string "checkgroups-update". BUGS
Though innd is paused while mod-active works, it is not inconceivable that there could be a conflict if something else tries to update the active file during the relatively short time that mod-active is working. The two most realistic ways I can think of for this to happen are either by an administrator concurrently doing a manual ctlinnd command, or by innd receiving a control message, then mod-active pausing the server, then the control message handler script that innd forked running its own ctlinnd command while mod-active is working. I've been using mod-active regularly for several years, though, and never had either problem. HISTORY
Written by David C Lawrence <tale@isc.org>. SEE ALSO
active(5), actsync(8), ctlinnd(8), innd(8). MOD-ACTIVE(8)
All times are GMT -4. The time now is 09:31 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy