shell脚本编写 hash方法,shell中字符到ascii码或数字的转换

#在shell脚本里,将字符串转ASCII码的方法:

[keysystem@localhost ~]$ printf "%d" "'A"
65
 [keysystem@localhost ~]$ printf "%d" "'0"
48

#在shell脚本里,将字符串转10进制转16进制的方法:

[keysystem@localhost ~]$ printf "%x" 10
a
#!/bin/bash

"Shell 传递参数实例!";
echo "第一个参数为:$1";

name=$1
echo "参数赋值: $name"


array=( 1 2 3 4 5 6 7 8 9 10 11 12 13 14 )

declare qm=0
# for ((i=0;i<${#array[@]};i++))
 for ((i=0;i<${#name};i++))
  do
      echo  ${array[i]}
      echo  ${name:i:1}

      # 获取字符串assci转码
      a=`printf  "%d" "'${name:i:1}"`
      echo $a 
      # 两数相乘
      sum=$(($a*${array[i]}))
      echo $sum
      let qm+=$sum
  done

echo $qm

# 取模运算
echo "2 % 4" | bc
echo "$qm%10"| bc

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个示例的Shell脚本,用于在Kudu和HDFS上执行一些常见的操作: ```bash #!/bin/bash # 定义Hadoop和Kudu的安装路径以及相关命令 HADOOP_HOME=/path/to/hadoop KUDU_HOME=/path/to/kudu HDFS_BIN=$HADOOP_HOME/bin/hdfs KUDU_BIN=$KUDU_HOME/bin/kudu # 启动Hadoop集群 start_hadoop() { $HADOOP_HOME/sbin/start-dfs.sh } # 停止Hadoop集群 stop_hadoop() { $HADOOP_HOME/sbin/stop-dfs.sh } # 启动Kudu集群 start_kudu() { $KUDU_BIN master start $KUDU_BIN tserver start } # 停止Kudu集群 stop_kudu() { $KUDU_BIN tserver stop $KUDU_BIN master stop } # 创建HDFS目录 create_hdfs_dir() { $HDFS_BIN dfs -mkdir /path/to/directory } # 创建Kudu表格 create_kudu_table() { $KUDU_BIN table create table_name \ --schema "column_name:data_type, ..." \ --partitioning "column_name:hash(num_partitions)" } # 运行示例命令 start_hadoop # 启动Hadoop集群 start_kudu # 启动Kudu集群 create_hdfs_dir # 创建HDFS目录 create_kudu_table # 创建Kudu表格 # 根据需要执行其他操作 stop_kudu # 停止Kudu集群 stop_hadoop # 停止Hadoop集群 ``` 请注意,此脚本仅提供了一些基本的操作示例,并且需要根据您的实际环境和需求进行修改。确保将`/path/to/hadoop`和`/path/to/kudu`替换为您的Hadoop和Kudu的安装路径,并根据您的需求自定义其他命令和参数。 此外,您还可以根据需要添加其他操作,例如数据导入导出、查询等。确保在执行脚本之前,您已经正确配置了Hadoop和Kudu的环境,并具备足够的权限执行所需的操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值