1) how to ignore sed operation in last line alone
# sed -e "$ ! s/a/b/"
2) SED Remove last character from line
# sed 's/.$//'
1) how to ignore sed operation in last line alone
# sed -e "$ ! s/a/b/"
2) SED Remove last character from line
# sed 's/.$//'
{
"Version": "2024-02-17",
"Statement": [
{
"Sid": "AllowLogCreation",
"Effect": "Allow",
"Action": [
"logs:PutLogEvents",
"logs:CreateLogStream",
"logs:CreateLogGroup"
],
"Resource": [
"arn:aws:logs:*:*:*"
]
},
{
"Sid": "AllowStartEc2",
"Effect": "Allow",
"Action": [
"ec2:Stop*",
"ec2:DescribeInstances"
],
"Resource": [
"*"
]
}
]
}
https://stackoverflow.com/questions/40040985/how-to-find-instances-that-dont-have-a-tag-using-boto3
import boto3
client=boto3.client('ec2')
def lambda_handler(event, context):
instances = [i for i in boto3.resource('ec2', region_name='ap-south-1').instances.all()]
# Print instance_id of instances that do not have a Tag of Key='Foo'
for i in instances:
if i.tags is not None and 'resource' not in [t['Key'] for t in i.tags]:
print (i.instance_id)
ids=[]
ids.append(i.instance_id)
print (ids)
client.stop_instances(InstanceIds=ids)
# client.stop_instances(i.instance_id)
#ec2= boto3.resource('ec2', region_name = 'ap-south-1')
#for each in ec2.instances.all():
# print (each.id)
Lookbehind syntax to ignore quotes
-t -w -g london -s 'yesterday' -e 'yesterday' -f 100000"
-t -w -g london -s "yesterday" -e 'yesterday' -f 100000"
-t -w -g london -s yesterday -e yesterday -f 100000"
Task is to extract the word after "-s"
Command : grep -oP "(?<=-s \"|-s '|-s )[^'\" ]*"
Explanation
(?<= : is the syntax for lookbehind
s \"|-s '|-s : or condition to search the word after -s
[^'\" ] :
Output
yesterday
yesterdayyesterday
Command 2 : grep -oP -- '-s\s*\K([^ ]+)' file | tr -d \'\"