Solved

how awk substr works and also how index works in inside substr?

Posted on 2016-10-20
4
139 Views
Last Modified: 2016-10-31
Hi Team,

i am little bit confused in in understanding the awk with substring function and also with index  which used in inside substring as below. Could anyone clearly explain me please? little bit confused :( :(

emerg1@HKLVADEDM10 ~/.ansible $ history | tail
 1952  2016-10-21 14:21:14 cat ../user_man/roles/usercreate/tasks/main.yml
 1953  2016-10-21 14:22:10 ls -lrt
 1954  2016-10-21 14:22:19 cat screenlog.1
 1955  2016-10-21 14:22:32 cd .ansible/
 1956  2016-10-21 14:22:33 ls -rlt
 1957  2016-10-21 14:22:39 cat user_add.yaml
 1958  2016-10-21 14:23:07 history | grep -i ansible | awk '{print sustr($0,index($0,$4))}'
 1959  2016-10-21 14:23:07 history | grep -i ansible | awk '{print sustr($0,index($0,$4))}'
 1960  2016-10-21 14:23:35 history | grep -i ansible | awk '{print substr($0,index($0,$4))}'
 1961  2016-10-21 14:25:11 history | tail


emerg1@HKLVADEDM10 ~/.ansible $  history | tail | awk '{print substr($0,index($0,$4))}'
ls -lrt
cat screenlog.1
cd .ansible/
ls -rlt
cat user_add.yaml
history | grep -i ansible | awk '{print sustr($0,index($0,$4))}'
history | grep -i ansible | awk '{print sustr($0,index($0,$4))}'
history | grep -i ansible | awk '{print substr($0,index($0,$4))}'
id gnanam
history | tail
emerg1@HKLVADEDM10 ~/.ansible $
0
Comment
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
4 Comments
 
LVL 14

Accepted Solution

by:
Phil Phillips earned 250 total points
ID: 41853358
substr returns a piece of a string. First argument is the string, and the second is the character position to start at. There is also a third optional argument of how many characters to return.

Example: substr("experts", 3) returns "perts"

Example: substr("experts", 3, 2) returns "pe"

Index returns the character position within a string. When you put substr and index together, you can get the piece of a string starting with the first occurrence of another string. In your example above, it's returning the 4th field and everything after.
0
 
LVL 78

Assisted Solution

by:arnold
arnold earned 125 total points
ID: 41854838
Awk by default splits the line based on white space. The individual entries start from 1
$0 means/represents the entire line
$4 is the forth element

As Phil covered, the result of your awk expression is to strip out all data prior to the fourth element while printing out the rest of the line from that point.
0
 
LVL 27

Assisted Solution

by:skullnobrains
skullnobrains earned 125 total points
ID: 41857077
yep. the whole command prints out all the commands that were run remotely using ansible ( assuming no options were given to ansible or you'd get some gibberish at the beginning of the lines ) whatever the remote host ( and possibly a few other commands containing the string 'ansible' )
0
 
LVL 1

Author Closing Comment

by:BharathKumarRaju DasaraRaju
ID: 41866493
Thank you for your help
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Recently, an awarded photographer, Selina De Maeyer (http://www.selinademaeyer.com/), completed a photo shoot of a beautiful event (http://www.sintjacobantwerpen.be/verslag-en-fotoreportage-van-de-sacramentsprocessie-door-antwerpen#thumbnails) in An…
The purpose of this article is to fix the unknown display problem in Linux Mint operating system. After installing the OS if you see Display monitor is not recognized then we can install "MESA" utilities to fix this problem or we can install additio…
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.

739 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question