Sponsored Content
Top Forums Shell Programming and Scripting A better way to manipulate text Post 303022783 by da1 on Friday 7th of September 2018 03:34:49 AM
Old 09-07-2018
A better way to manipulate text

Good morning everyone,

I'm currently trying to convert an environment variable into a string and then attach it at the end of a command and launch it.

I have the following right now, but it's very ugly:

Code:
AMI_TAGS="env=test,country=XX,city=blah,galaxy=blahblah"

aws ec2 create-tags --resources ami-1234 --tags $(echo "${AMI_TAGS}" | \
  tr ',' '\n'|sed -e 's/=/ /g' | while read key val; do \
  echo Key=$key Value=$val;done | tr ' ' ',' | tr '\n' ' ')

Output is:
Code:
aws ec2 create-tags --resources ami-1234 --tags Key=env,Value=test Key=country,Value=XX Key=city,Value=blah Key=galaxy,Value=blahblah

Here is the man:create-tags — AWS CLI 1.16.9 Command Reference

I could do a cleaner for loop but then I would launch 1x "aws ec2" command for each string. I would prefer avoiding that.

I'm currently reading about the "set" command for bash but I would appreciate some guidance or input or an example here.

Thank you in advance and I hope I've properly explained what's needed.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to manipulate date?

Hi can u pls help me out with this as i am relatively new to unix. I need to use 4 different types of dates in my shell script * first day of the last(previous) month * last day of the last(previous) month * first day of the current month * (sysdate-1) yesterday's date for the current... (5 Replies)
Discussion started by: phani
5 Replies

2. Shell Programming and Scripting

Manipulate files

Hi everybody: I have a problem. I have a output files which have this pattern: number1 --space block1a - 7rows/10columns/65elements --space block1b - 7rows/10columns/65elements --space block1c - 7rows/10columns/65elements --space number2 --space block2a - 7rows/10columns/65elements... (0 Replies)
Discussion started by: tonet
0 Replies

3. UNIX for Dummies Questions & Answers

using sed to manipulate text in files

Hi, I have a slight problem in trying to manipulate the text within a file using the "sed" command in that the text i need changed has "/" slashes in. I have a .sh script that scans the "/db/sybbackup/" directories for any .dmp file older than 2 days and then to >> the information to a file called... (3 Replies)
Discussion started by: Jefferson333
3 Replies

4. Shell Programming and Scripting

Script to manipulate logfile text

Hi guys, I was wandering if a Shell guru could give me some advice on tackling a problem. I have used a mixture of grep, cut and awk to get data from a log file in the following format: 14/11/08 10:39: Checking currenly : Enabled 14/11/08 10:39: Records allocated : 221... (11 Replies)
Discussion started by: rosspaddock
11 Replies

5. Shell Programming and Scripting

manipulate text for openldap import/export question.

Hey guys.. I am not sure if this is the right place to post this - but here goes. I need to manipulate an openldap export to match a different schema so that I can import into that system. Basically - its just text manipulation. I have gotten alot of it done just by using simple sed, but I am sorta... (0 Replies)
Discussion started by: i2ambler
0 Replies

6. UNIX for Dummies Questions & Answers

Question on how to manipulate a SIMPLE text file (using awk?)

I have a simple txt files that looks something like this (The title is a part of the text file) Student Grades --------------- 1 Tim Purser 89 2 John Wayne 56 3 Jenn Hawkins 95 4 Harry Potter 75 Here are my questions: How would I ONLY print the names of students... (2 Replies)
Discussion started by: ninjagod123
2 Replies

7. Shell Programming and Scripting

Manipulate the text file in UNIX

Hi All, I have a file like below and i have 2 questions on this (They are 3 lines starts with 01 , 02 and 03. but is 01abc333644554 234 2334535 34534535355353 sfsdf345455 353 4543 jgkg tty 7676 02cdesdfsdfsdf 234 wesdfsdf 345345 234234 234234 2342342 dfgdfg sdfgg dgdgdg fgvfs... (6 Replies)
Discussion started by: siva.pitchai
6 Replies

8. UNIX for Beginners Questions & Answers

How can I remove partial duplicates and manipulate text?

Hello, How can I remove partial duplicates and manipulate text in bash using either awk, grep or sed? Thanks. Input: ted,"foo,bar,zoo" john-son,"foot,ben,zoo" bob,"bar,foot" Expected Output: foo,ted bar,ted zoo,ted foot,john-son ben,john-son (4 Replies)
Discussion started by: tara123
4 Replies

9. UNIX for Beginners Questions & Answers

How to manipulate a text file and store each version for every changes in a directory?

I attached both picturehttps://1drv.ms/t/s!Aoomvi55MLAQh1jODfUxa-xurns_ and *.txt file of a sample work file. In this file Reactions which only start with "r1f", "r2f", "r3f"......and so on. And for each reaction the reaction rates is situated couple of lines later with a "+" sign. For each... (1 Reply)
Discussion started by: Atta
1 Replies

10. UNIX for Beginners Questions & Answers

Manipulate condition to send mail based on output text in file

Hi All, I have a working script as below. echo "Files loaded with $(cat /var/tmp/script.X1.out)" | mail -s "Files loaded with return code" mailid This script takes the output from script.X1.out file and appends the text "Files loaded with return code" and sends the email. Now what I want... (5 Replies)
Discussion started by: midhun3108
5 Replies
SVNPATH(1)																SVNPATH(1)

NAME
svnpath - output svn url with support for tags and branches SYNOPSIS
svnpath svnpath tags svnpath branches svnpath trunk DESCRIPTION
svnpath is intended to be run in a Subversion working copy. In its simplest usage, svnpath with no parameters outputs the svn url for the repository associated with the working copy. If a parameter is given, svnpath attempts to instead output the url that would be used for the tags, branches, or trunk. This will only work if it's run in the top-level directory that is subject to tagging or branching. For example, if you want to tag what's checked into Subversion as version 1.0, you could use a command like this: svn cp $(svnpath) $(svnpath tags)/1.0 That's much easier than using svn info to look up the repository url and manually modifying it to derive the url to use for the tag, and typing in something like this: svn cp svn+ssh://my.server.example/svn/project/trunk svn+ssh://my.server.example/svn/project/tags/1.0 svnpath uses a simple heuristic to convert between the trunk, tags, and branches paths. It replaces the first occurrence of trunk, tags, or branches with the name of what you're looking for. This will work ok for most typical Subversion repository layouts. If you have an atypical layout and it does not work, you can add a ~/.svnpath file. This file is perl code, which can modify the path in $url. For example, the author uses this file: #!/usr/bin/perl # svnpath personal override file # For d-i I sometimes work from a full d-i tree branch. Remove that from # the path to get regular tags or branches directories. $url=~s!d-i/(rc|beta)[0-9]+/!!; $url=~s!d-i/sarge/!!; 1 LICENSE
GPL version 2 or later AUTHOR
Joey Hess <joey@kitenet.net> Debian Utilities 2013-12-23 SVNPATH(1)
All times are GMT -4. The time now is 10:38 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy